前 言
欢迎阅读《Android 5.0开发范例代码大全(第4版)》!
如果你正在阅读本书,那么移动设备给软件开发人员和用户带来的无限机遇就不用我在此赘述了。近年来,Android已经成为□主要的移动平台之一。对于开发人员而言,必须了解如何利用Android,才能确保自己跟得上市场的变化,从而把握各种潜在的机会。但是任何新平台在常见需求的开发和常见问题的解决方案上都会有不确定性。
我们撰写本书旨在帮助开发人员解决实际开发中的问题,通过直观的例子告诉读者如何利用工具编写Android平台上的应用程序。本书不会很深入地介绍Android SDK、NDK或是其他工具。我们不会让隐藏其中的各种琐碎细节和高深理论打击读者的积极性。但这不意味着这些细节没意思或是不重要。读者应该花时间研究这些细节,以避免在开发中犯错误。但在解决迫在眉睫的问题时,这些东西通常只会让人分心。
本书不会讲解Java编程,也不会介绍如何构建Android应用程序的代码块。本书略去了很多基础知识(例如,如何使用TextView显示文本),因为我们觉得这些知识在学过之后就不会遗忘。相反,本书会帮助熟悉Android的开发人员解决很多实际开发中经常要完成的任务,而这些复杂的任务不是寥寥几行代码就能完成的,自然也很难记住。
读者可以把本书当作可供随时查阅的参考书、资源丰富的示例手册,随时都可以从中找到有助于高效完成工作的实用建议。
本书主要内容
本书深入介绍使用Android SDK解决实际问题。你将学习高效创建在不同设备上都可良好运行的用户界面的技巧。你将熟练掌握如何合并各种硬件(音频设备、传感器和摄像头),正是这些硬件使得移动设备成为独特的平台。我们甚至会介绍如何整合Google和各种服务制造商提供的服务与应用程序,从而使系统真正服务于用户。
如果想开发成功的应用程序,性能问题是不可忽视的。大部分时候,这都不是问题,因为Android运行时引擎日渐完善,可将字节码编译成设备的原生代码。然而,你可能需要利用Android NDK以进一步提升性能。第8章详述了NDK,并用Java原生接口(Java Native Interface,JNI)绑定将原生代码整合到应用程序中。
NDK是一种比较复杂的技术,它也会降低应用程序的可移植性。此外,虽然能够提升性能,但在应对繁重工作时,NDK也不能很好地处理多个CPU内核。幸运的是,Google通过引入RenderScript已经消除了这种冗长编码并简化了多核执行任务,另外还实现了可移植性。第8章介绍RenderScript并演示如何使用它的计算引擎(并自动使用CPU的多核)来处理图片。
注意目标API级别
在本书中,读者会看到绝大部分的解决方案都有相应的□低API级别要求。本书中的大部分解决方案都只需要API Level 1,换言之就是这些代码能在目标版本为Android 1.0以上的任何应用程序中运行。但是,有些地方也用到了较新版本中引入的API。注意各个范例的API级别,确保代码与应用程序要支持的Android版本相匹配。
本书在线资源