深入浅出Google Android(示例生动丰富,理论和实践完美结合)
深入浅出Google Android(示例生动丰富,理论和实践完美结合)
【作 者】E2ECloud工作室 [同作者作品] [作译者介绍]
【丛 书 名】 图灵程序设计丛书
【出 版 社】 人民邮电出版社 【书 号】 9787115200693
【上架时间】 2009-7-13
【出版日期】 2009 年7月 【开 本】 16开
市场价 :¥45.00
会员价 : ¥33.75(75折)
期书预定及样章试读:http://www.china-pub.com/195750
【编辑推荐】
全面涵盖Android SDK 1.5新特性
深入浅出分析Android的核心框架运行机制
示例生动丰富,由浅入深,理论和实践完美结合
迅速掌握当今炙手可热的炫酷技术
提供长达200分钟左右的视频教程
【内容简介】
随着越来越多的手机厂商和移动运营商加入了开放手机联盟,Android平台日益受到广大开发者的关注和推崇。.
本书是国内最早的Android开发团队的集体智慧结晶,真正完全基于Android最新的SDK 1.5,内容详实,示例生动丰富,包含大量示例代码,可操作性强。它不仅涵盖了Android平台从基础概念到高级应用的所有主题,而且深入浅出地介绍了几种常见的Android项目,具有很强的参考价值。特别是在本书的第10、11章重点介绍了Android SDK 1.5引入的最为重要的三个特性,即桌面部件、实时文件夹、虚拟键盘与输入法应用的开发方法。..
通过本书,读者可以迅速掌握Android平台来构建应用程序,成为Android开发高手,跻身新技术的弄潮儿。
图灵网站本书相关页面提供了有关免费的在线视频教程和源码。http://www.e2ecloud.com/ 提供问题答疑。
【序】
Android一词的英文原义是“机器人”,而本书介绍的Android则是由开放手机联盟(Open Handset Alliance,OHA)于2007年11月5日发布的基于Linux的开源手机平台。该平台由操作系统、中间件、用户界面和应用软件组成,是首个为移动终端打造的真正开放和完整的移动软件平台。Android平台采用了WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,同时Android还具有比iPhone等其他手机更强的搜索功能,可以说是一种融入全部Web应用的平台。根据市场分析机构信息通信与媒体研究公司Informa的预测,Google Android手机平台将在三年内超越苹果iPhone操作系统。我们完全相信未来Android的发展前景必将越来越广阔。
为了帮助国内的开发人员能快速掌握Android开发,基于Google于2009年4月15日最新发布的Android SDK 1.5,我们编写了这本Android开发指南。本书一共分为13章,以大量详实的实例为基础,全面系统地向读者介绍了Android 开发的各个方面。本书第1~3章为全书的基础,为读者介绍了Android的诞生、开发环境的构建以及Android应用程序开发的基本组件:Activity、Intent、Service等。通过对前面三章内容的学习,读者将对Android应用开发有一个基本了解。接下来在本书的第4~9章,我们将带领读者一步步构建电话应用、音乐播放器应用以及地震观测器应用,使读者深入掌握Android平台下的UI开发、电话应用开发、多媒体操作、数据库使用,以及基于位置的应用开发方法。本书的第10、11章将重点向读者介绍Android SDK 1.5引入的最为重要的三个特性:桌面部件、实时文件夹、虚拟软键盘与输入法应用的开发方法。通过这三章的学习,读者将掌握如何利用这些新特性来开发引人入胜的应用。最后,本书的第12、13章将向读者介绍Android程序的发布流程,包括了程序的签名、使用Android Market等内容。
为了配合本书的学习,我们还提供了配套的视频教程 。本视频教程一共8讲,可以帮助读者快速掌握Android开发基础,读者可以首先进行视频教程的学习,然后再利用本书进行更深入的学习。在本书的配套网站(http://www.5billion.com.cn/)上,读者还可以下载对应的源代码。同时Android 2.0也将在2009年的第三季度推出,因此我们将利用网站来不断完善和扩充本书中没有讲到的内容。读者有任何的疑问和心得也可以到网站上与我们交流。
【目 录】
第1章 千呼万唤始出来
——Android的前世今生 1
1.1 Android的诞生 1
1.2 Android的优点 3
1.2.1 开放性 3
1.2.2 应用程序平等 3
1.2.3 应用程序间无界限 4
1.2.4 快速方便的应用程序开发 5
1.3 Android系统架构 6
1.3.1 应用程序 6
1.3.2 应用程序框架 7
1.3.3 Android运行时 8
1.3.4 系统库 9
1.3.5 Linux内核 10
1.4 Android与移动因特网 10
1.4.1 诺基亚的“四大支柱” 10
1.4.2 苹果公司的“大超市” 11
1.4.3 Google的“云” 12
1.5 Android的发展 12
1.5.1 Android开源应用 12
1.5.2 Android设备 13
1.5.3 Android平台 14
1.6 小结 15
第2章 而今迈步从头越
——构建Android开发环境 16
2.1 系统需求 16
2.2 安装软件 17
2.2.1 安装JDK 17
2.2.2 安装Android SDK 17
2.2.3 安装Eclipse以及ADT 18
2.2.4 创建AVD 22
2.3 Android SDK 1.5初体验 23
2.4 构建第一个Android程序 26
2.5 解析Hello Android 29
2.5.1 应用程序构成 30
2.5.2 代码分析 31
2.6 调试程序 34
2.7 小结 38
第3章 一片冰心在玉壶
——剖析Android应用程序核心 39
3.1 应用程序的基本组件 39
3.1.1 Activity简介 41
3.1.2 Service简介 42
3.1.3 BroadcastReceiver简介 43
3.1.4 ContentProvider简介 43
3.1.5 Intent——连接组件的纽带 44
3.2 应用程序的生命周期 44
3.3 近看Activity及其生命周期 48
3.3.1 创建Activity 48
3.3.2 Activity的生命周期 49
3.4 资源 57
3.4.1 创建、管理资源 58
3.4.2 使用资源 58
3.5 AndroidManifest.xml文件 61
3.5.1 AndroidManifest.xml文件
的结构 61
3.5.2 在AndroidManifest.xml中
声明权限 62
3.6 小结 64
第4章 淡汝浓抹总相宜
——创建用户界面 65
4.1 Android用户界面初体验 65
4.1.1 View与ViewGroup 65
4.1.2 可视化控件 66
4.1.3 布局 69
4.1.4 音乐播放器用户界面(1) 82
4.2 菜单和对话框 85
4.2.1 菜单 85
4.2.2 对话框 91
4.2.3 音乐播放器用户界面(2) 97
4.3 进阶 99
4.3.1 响应用户界面的事件 99
4.3.2 用户界面的数据绑定 104
4.3.3 更改控件外观 109
4.3.4 音乐播放器用户界面(3) 112
4.4 小结 114
第5章 青鸟殷勤为探看
——电话与短信应用 115
5.1 什么是Intent 115
5.2 解析Intent 118
5.2.1 显式Intent和隐式Intent 119
5.2.2 IntentFilter 119
5.3 用Intent激活电话拨号程序 121
5.3.1 拨号程序雏形 121
5.3.2 可输入电话号码的拨号程序 125
5.3.3 使用IntentFilter的拨号程序 128
5.4 用Intent实现一个简单的短信程序 129
5.4.1 创建TinySMS界面 129
5.4.2 设置权限 131
5.4.3 发送短信 131
5.5 Android中电话和短信服务的包 133
5.6 小结 133
第6章 仙乐风飘处处闻
——构建你的音乐播放器 134
6.1 Service简介 134
6.2 使用BroadcastReceiver 138
6.3 让TinyPlayer播放音乐 140
6.3.1 Service部分 140
6.3.2 Activity部分 144
6.4 小结 146
第7章 乱花渐欲迷人眼
——使用外部数据和服务 147
7.1 实例1:通过URL获取网络资源 147
7.2 实例2:用HTTP POST提交表单 150
7.3 实例3:用SAX解析XML文件 153
7.4 实例4:利用Google API完成天气
预报 162
7.4.1 用户界面设计与实现 163
7.4.2 解析天气信息 165
7.5 实例5:用DOM解析XML文件——构建实时地震信息列表 170
7.5.1 XML解析器:DOM和SAX 170
7.5.2 通过DOM构建实时地震信息列表 171
7.5.3 使用DOM解析 176
7.6 小结 179
第8章 日暮乡关何处是——使用位置
服务和地图API 180
8.1 位置服务 180
8.1.1 获取位置信息 180
8.1.2 构造LocationProvider查询条件 183
8.1.3 跟踪位置变化 183
8.2 基于地图的应用 186
8.2.1 获取Map API密钥 187
8.2.2 使用MapView下载显示地图 189
8.2.3 在地图上标记当前位置 191
8.3 用地图显示地震信息 197
8.4 小结 201
第9章 为有源头活水来——使用SQLite、
ContentProvider与
Preferences处理数据 202
9.1 文件I/O 202
9.2 SQLite数据库 206
9.2.1 SQLite数据库介绍 206
9.2.2 创建/打开SQLite数据库 207
9.2.3 利用SQLiteDatabase对象操作数据库 210
9.2.4 Cursor的使用 216
9.3 ContentProvider 220
9.3.1 定义ContentProvider 220
9.3.2 使用ContentResolver查询、更改数据 227
9.4 使用Preferences存储应用程序数据 230
9.5 让TinyPlayer播放本地音乐文件 233
9.6 小结 236
第10章 珠箔银屏迤逦开
——桌面组件的开发 237
10.1 桌面组件简介 237
10.2 快捷方式 238
10.2.1 在应用程序中添加快捷方式 238
10.2.2 在Launcher添加应用程序
的快捷方式 242
10.3 实时文件夹 245
10.3.1 定义创建实时文件夹的
Activity 245
10.3.2 定义支持实时文件夹的
ContentProvider 248
10.4 桌面部件 251
10.5 小结 256
第11章 欲书花叶寄朝云
——虚拟软键盘与输入法 257
11.1 软键盘输入法简介 257
11.2 创建软键盘输入法 259
11.2.1 软键盘输入法的
AndroidManifest.xml 259
11.2.2 输入法和软键盘的核心类 260
11.2.3 输入法 264
11.2.4 根据目标输入类型调整输入法布局 264
11.2.5 获取输入内容 266
11.2.6 截获硬键盘按键事件 267
11.2.7 输入候选View 267
11.3 小结 268
第12章 试借君王玉马鞭
——准备发布应用程序 269
12.1 Android应用程序发布概览 269
12.2 最终用户许可协议 269
12.3 应用程序签名 274
12.3.1 概述 274
12.3.2 签名策略 275
12.3.3 为应用程序签名 275
12.4 应用程序版本 277
12.4.1 版本管理 277
12.4.2 应用程序升级 278
12.5 小结 279
第13章 书中自有黄金屋
——销售Android应用程序 280
13.1 Sun开发人员的苹果App Store传奇 280
13.2 Android Market简介 280
13.2.1 Android Market是什么 281
13.2.2 Android Market的优势 281
13.2.3 在Android Market上发布
应用程序 282
13.3 发布Android应用程序的其他途径 284
13.4 小结 285
附录A 常用的Android常量 286
附录B ADB的使用 291
附录C 在模拟器中虚拟SD卡 293