Android开发权威指南(第二版)
上QQ阅读APP看书,第一时间看更新

前言

随着Android的超速发展,为了使Android更加稳定,以及更好地处理版本碎片化,Google公司承诺每年只发布一次Android的新版本,不过从最近几年看,Google公司完全没有遵守这个承诺,Android的版本发布越来越快,越来越频繁。

由于Android版本更新太块,而且大的升级有可能出现版本之间的不兼容,或增加了新的技术,所以就造成了目前市面上的Android书籍的内容严重滞后,这就造成了书中的很多例子在新版本的Android系统中根本无法成功运行。为了使读者尽可能跟上Android升级的脚步,笔者经过近一年的写作,将《Android开发权威指南》第1版进行了全面改版,增加了很多只有Android 4.x才有的新功能。所以,读者可以通过本书的学习全面掌握Android的最新技术。掌握这些技术除了可以显著提高自己的技术水平外,还可以让自己的职业生涯达到一个新的高度。而且,Android程序员目前的市场需求越来越大,这必然会为我们带来更多的就业和创业机会,这些机会都值得广大程序员好好把握!

本书的特点

本书是一本全面介绍Android应用开发的专著,全面介绍了在Android 4.2.2平台上应用开发的各种知识。与市面上的同类Android编程的图书不同,本书从Android的各个版本新增功能入手,介绍了Android各个主要版本之间的差异,这对于读者为不同Android版本开发应用至关重要。

本书具有的特点介绍如下。

1.知识点全面,覆盖面广

本书全面介绍了Android的各种应用开发知识,主要包括四大应用程序组件、布局、菜单、控件、资源和本地化、可视化UI设计、对话框、Toast和通知栏(Notification)、拖放技术、数据库技术、Android支持的各种组件技术、通信技术(蓝牙、NFC、网络等)、异步装载、推送技术、多媒体、2D绘图技术、OpenGL ES、动态壁纸、传感器、GPS、谷歌地图、人机交互、Android NDK开发、测试驱动开发、性能优化等。这些技术几乎覆盖了Android应用开发的每一个方面,其中有很多技术讲解得非常深入,例如,Activity从创建到销毁的过程中到底发生了什么;Intent、Intent Filter与Activity到底是什么关系;NFC技术在不同场合、不同领域的应用。其中有很多技术在其他同类的图书中是绝无仅有的。

2.最新版本,实战性强

本书采用了最新的Android版本(4.2.2),所以,书中示例使用的都是最新的技术。而且每一个知识点都采用了“项目驱动”的方式来讲解,这样在理解知识点所涉及的理论后,就可以很容易地进行实战演练。随书光盘中提供的数万行源代码可以供读者随时参考。

3.讲解细腻,授人以渔

现在市面上很多同类书尽管提供了大量的示例,但只是机械地Step by Step,并没有介绍其中的实现原理,而本书的很多示例将会进入到更深层来挖掘其中的奥秘。例如,对于动画渲染器来说,自定义的渲染器不能在XML文件中定义,那是为什么呢?本书会详细分析相关的Android SDK源代码来了解其中的奥秘。读者将从这些示例中了解到从官方文档和其他图书中无法了解到的信息,本书不仅授人以鱼,而且还授人以渔。

光盘内容

1.光盘说明

src:所有的源代码都在src目录中,每一章的代码都放在chxx目录中,例如,第5章的源代码目录是src/ch05。src.7z:为了方便读者将源代码复制到个人计算机上,还提供了一个压缩版本的源代码文件。specification:该目录中是NFC规范。tools:该目录中包含了一些反编译工具。software:该目录中包含了用于读写NFC标签的工具。tomcat:该目录中包含了Tomcat 7,并在其中内置了第27章使用的Servlet,可直接在Windows、Mac OS或Linux上启动Tomcat,但要设置JAVA_HOME环境变量,并且将<JDK安装目录>/bin路径设置到PATH环境变量中。

2.运行环境

本书的示例运行在JDK 6下,需要在Eclipse 3.4及以上版本中导入并运行本例。建议读者除了使用JDK 6外(如果编译Android源代码,必须使用JDK 6,如果只想运行随书光盘中的示例,也可以使用JDK 7),其他的工具尽量使用最新的版本。

随书光盘中的示例在Android 4.2.2上测试通过,如果读者使用的Android版本与本书示例使用的Android版本不同,请在Eclipse中修改当前工程的Android版本。修改的方法是打开工程的属性对话框,单击左侧的“Android”项,然后在右侧的列表中选择相应的Android版本即可。

另外,有一些示例并不能在Android模拟器上测试,例如,蓝牙、NFC等。运行这些示例需要读者自己准备带有相应硬件模块的Android设备。对于NFC应用,读者可以使用第45章介绍的NFC侠开发和测试NFC应用,但第26章的示例仍然使用传统的方式编写,所以,仍然需要在支持NFC的Android设备上运行。

3.注意事项

(1)本书所有的Android项目都是Eclipse工程,建议读者将源代码从光盘复制到个人计算机上,然后使用Eclipse直接导入即可。

(2)本书的第27章涉及一些Web的技术,其中使用到了Tomcat 7和Servlet,读者只要将光盘中的tomcat目录直复制到个人计算机上,并设置好JAVA_HOME环境变量,然后直接运行<Tomcat安装目录>/bin目录中的startup.sh或startup.bat脚本文件就可以启动Tomcat了。第27章使用的Servlet已经集成到Tomcat中,只要修改一下示例中的IP即可访问Servlet。

(3)本书还有一些示例使用了笔者机器的IP地址,读者在运行这些示例时要将这些IP地址改成自己机器的IP地址。这些内容已经在相关的章节予以说明了,读者在运行这些示例时要仔细阅读相关的代码描述。

4.技术支持

如果您对光盘的内容有什么不清楚的,或任何与本书有关的问题都可以到http://blog.csdn.net/ nokiaguy或新浪微博http://weibo.com/androidguy与笔者联系。编辑联系邮箱为zhangtao@ptpress.com.cn。