《Google Android开发入门与实战》.pdf
内容简介 本书内容上涵盖了用android开发的大部分场景,从android基础介绍、环境搭建、sdk介绍、market使用,到应用剖析、组件介绍、实例演示等方面。从技术实现上,讲解了5个android平台下的完整综合实例及源代码分析,分别是rss阅读器、基于google map的个人gps、豆瓣网(web 2.0)客户端、在线音乐播放器、手机信息查看助手。本书注重对实际动手能力的指导,在遵循技术研发知识体系的严密性同时,在容易产生错误、不易理解的环节配以了翔实的开发情景截图,并将重要的知识点和开发技巧以“小实验”、“小提醒”、“小知识”、“注意”等的活泼形式呈现给读者。在程序实例的讲解方面,主要将实例安插在android开发的精髓知识章节,这为初学者学 习与实践结合提供了很好的指导。. 本书配套有400多分钟的全程开发视频光盘,指导读者快速、无障碍地学通android实战开发技术。.. 本书适合具备一定软件开发经验,想快速进入android开发领域的程序员;具备一些手机开发经验的开发者和android开发爱好者学习用书;也适合作为相关培训学校的android培训教材。... 目录 第1章 掀起你的盖头来——初识android. 1 1.1 认识android 1 1.2 android的背景 2 1.2.1 android的历史 2 1.2.2 android的发展 2 1.3 我的android我做主 2 1.3.1 开发基于android平台的应用 3 1.3.2 参加android开发者大赛 3 1.3.3 个人英雄主义再现——得到更多人的认可和尊重 3 1.3.4 获得应有的收益——android market 3 1.4 真实体验——android模拟器 4 1.4.1 模拟器概述 4 1.4.2 模拟器和真机的区别 4 1.4.3 模拟器使用注意事项 4 1.5 更上一层楼——加入android开发社区 5 1.6 本章小结 6 第2章 工欲善其事 必先利其器——搭建android开发环境 7 2.1 开发android应用前的准备 7 2.1.1 android开发系统要求 7 2.1.2 android软件开发包 7 .2.1.3 其他注意事项 8 2.2 windows开发环境搭建 8 2.2.1 jdk、eclipse、android sdk软件安装 8 2.2.2 sdk的家在哪里——设定android sdk home 14 2.2.3 真的准备好了吗——开发环境验证 14 2.2.4 创建android 虚拟设备(avd) 15 2.3 linux一族——ubuntu开发环境搭建 17 2.3.1 java、eclipse和adt插件安装 17 2.3.2 设定android sdk home 23 2.4 mac os一族——苹果开发环境搭建 24 2.5 本章小结 24 第3章 清点可用资本——android sdk介绍 25 3.1 android sdk 基础 25 3.2 深入探寻android sdk的密码 25 3.2.1 android sdk目录结构 25 3.2.2 android.jar及内部结构 27 3.2.3 sdk文档及阅读技巧 27 3.2.4 先来热热身——android sdk例子解析 28 3.2.5 sdk提供的工具介绍 31 3.3 android典型包分析 33 3.3.1 开发的基石——android api核心开发包介绍 33 3.3.2 拓展开发外延——android可选api介绍 34 3.4 本章小结 34 第4章 赚钱的市场——android market及应用发布 35 4.1 google market产生背景与目的 35 4.2 体验“选货”的乐趣——在g1上体验market的使用 35 4.3 android开发活动及特色应用 37 4.3.1 开发应用的领域 37 4.3.2 android market特色应用一览 38 4.4 你也可以做东家——申请market账号 43 4.4.1 卖东西要先入伙——准备工作 43 4.4.2 入伙过程——申请 44 4.5 开张了——在market上发布应用 45 4.5.1 发布时可能遇到的错误 45 4.5.2 卖东西也要签名——生成签名文件 46 4.5.3 打包、签名、发布应用 48 4.6 本章小结 51 第5章 千里之行 始于足下——第一个应用helloworld 52 5.1 helloworld应用分析 52 5.1.1 新建一个android工程 52 5.1.2 填写工程的信息 52 5.1.3 编程实现 53 5.1.4 运行项目 54 5.2 调试项目 54 5.2.1 设置断点 54 5.2.2 debug 项目 55 5.2.3 断点调试 55 5.3 本章小结 56 第6章 磨刀不误砍柴工——android应用程序结构介绍 57 6.1 android体系结构介绍 57 6.1.1 应用程序(application) 57 6.1.2 应用程序框架(application framework) 58 6.1.3 库(libraries)和运行环境(runtime) 58 6.2 android 应用程序组成 59 6.2.1 activity介绍 59 6.2.2 broadcast intent receiver介绍 60 6.2.3 service介绍 61 6.2.4 content provider介绍 61 6.3 android应用工程文件组成 61 6.4 本章小结 62 第7章 良好的学习开端——android基本组件介绍 63 7.1 第一印象很重要——界面ui元素介绍 63 7.1.1 视图组件(view) 63 7.1.2 视图容器组件(viewgroup) 63 7.1.3 布局组件(layout) 64 7.1.4 布局参数(layoutparams) 64 7.2 我的美丽我做主——android中应用界面布局 64 7.2.1 实例操作演示 65 7.2.2 实例编程实现 66 7.3 不积跬步 无以至千里——常用widget组件介绍 75 7.3.1 创建widget组件实例 75 7.3.2 按钮(button)介绍与应用 76 7.3.3 文本框(textview)介绍与应用 77 7.3.4 编辑框(edittext)介绍与应用 79 7.3.5 多项选择(checkbox)介绍与应用 81 7.3.6 单项选择(radiogroup )介绍与应用 83 7.3.7 下拉列表(spinner )介绍与应用 85 7.3.8 自动完成文本(autocompletetextview ) 87 7.3.9 日期选择器(datepicker)介绍与应用 89 7.3.10 时间选择器(timepicker)介绍与应用 90 7.3.11 滚动视图(scrollview)介绍与应用 91 7.3.12 进度条(progressbar)介绍与应用 92 7.3.13 拖动条(seekbar)介绍与应用 93 7.3.14 评分组件(ratingbar)介绍与应用 94 7.3.15 图片视图(imageview)介绍与应用 95 7.3.16 图片按钮(imagebutton)介绍与应用 96 7.3.17 切换图片(imageswitcher&gallery;) 96 7.3.18 网格视图(gridview)介绍与应用 99 7.3.19 标签(tab)介绍与应用 101 7.4 友好的菜单——menu介绍与实例 102 7.4.1 实例操作演示.. 103 7.4.2 实例编程实现 103 7.5 android应用的灵魂——intent和activity介绍与实例 106 7.5.1 实例操作演示 106 7.5.2 实例编程实现 106 7.6 用好列表,做好程序——列表(listview)介绍与实例 111 7.6.1 实例程序演示 111 7.6.2 实例编程实现 112 7.7 友好地互动交流——对话框(dialog)介绍与实例 119 7.8 温馨的提醒——toast和notification应用 127 7.8.1 实例操作演示 128 7.8.2 实例编程实现 129 7.9 本章小结 135 第8章 移动信息仓库——android的数据存储操作 136 8.1 android数据存储概述 136 8.2 轻轻地我保护——sharedpreferences存储 136 8.3 谁的文件,谁主宰——文件存储 140 8.4 打造自己的数据库存储——sqlite存储方式 141 8.4.1 android中对数据库操作 141 8.4.2 完整地操作数据库——日记本实例 147 8.5 我的数据你来用——contentprovider介绍 155 8.5.1 初识contentprovider 155 8.5.2 使用contentprovider读取系统数据 156 8.5.3 使用contentprovider操作数据日记本实例 159 8.6 再学一招——网络存储 171 8.7 本章小结 173 第9章 我来“广播”你的“意图”——intent和broadcast面对面 174 9.1 android应用程序的核心——intent 174 9.1.1 intent基础 174 9.1.2 用intent启动一个新的activity 174 9.1.3 intent 详细讲解 177 9.1.4 android解析intent实现 179 9.2 用广播告诉你——利用intent来广播(broadcast)事件 180 9.2.1 实现android中的广播事件 180 9.2.2 broadcast receiver介绍 181 9.3 应用实例详解 181 9.3.1 程序操作演示 182 9.3.2 实例编程实现 182 9.4 本章小结 186 第10章 一切为用户服务——service应用实例 187 10.1 认识service 187 10.2 使用service 188 10.3 service的生命周期 194 10.4 实例学习service 194 10.4.1 精彩实例一——定时提醒 194 10.4.2 精彩实例二——音乐播放器 198 10.5 本章小结 201 第11章 循序渐进——开发android应用的基本步骤 202 11.1 兵马未动 粮草先行——应用规划及架构设计 202 11.2 应用开发步骤 202 11.2.1 界面设计始终是第一位——实现ui 203 11.2.2 必备的动力源泉——数据操作和存储 203 11.2.3 华丽转身——实现多页面跳转 203 11.2.4 始终为用户做好服务——增加service 203 11.2.5 细节决定成败——完善应用细节 203 11.3 成功就在眼前——应用测试和发布 204 11.3.1 只欠东风——应用测试 204 11.3.2 可以赚钱了——发布到android market 204 11.4 本章小结 204 第12章 android综合案例一——rss阅读器实例 205 12.1 rss介绍 205 12.1.1 rss基础 205 12.1.2 rss的历史 205 12.1.3 rss语法介绍 206 12.2 sax介绍 207 12.2.1 sax基础 207 12.2.2 使用sax的作用 207 12.2.3 怎样使用sax 207 12.3 rss阅读器设计 209 12.3.1 rss阅读器功能设计 209 12.3.2 rss阅读器ui和交互流程设计 209 12.4 rss阅读器的实现 210 12.4.1 程序实体解析 210 12.4.2 实现一个自己的contenthandler 214 12.4.3 activity的实现 217 12.5 本章小结 220 第13章 android综合案例二——基于google map开发个人移动地图 221 13.1 项目ui规划 221 13.2 数据存储实现 222 13.2.1 设计数据库及表结构 222 13.2.2 设计sharepreference 存储 223 13.3 项目实现流程 223 13.3.1 创建项目工程 223 13.3.2 项目各功能及界面实现 224 13.3.3 实现数据存取 247 13.3.4 实现service 252 13.3.5 应用流程整体实现 254 13.3.6 后续开发完善 255 13.4 项目程序演示 255 13.5 项目程序签名、打包和发布 257 13.6 本章小结 259 第14章 android综合案例三——基于android的豆瓣网(web 2.0)移动客户端开发 260 14.1 关于豆瓣网和豆瓣网api 260 14.1.1 豆瓣网介绍 260 14.1.2 豆瓣网api介绍 261 14.1.3 豆瓣网api认证 261 14.1.4 豆瓣网api快速入门 264 14.1.5 豆瓣网api java库介绍 265 14.2 豆瓣网(web 2.0)客户端设计 268 14.2.1 客户端功能规划设计 268 14.2.2 ui和交互流程设计 268 14.2.3 数据存储设计 270 14.3 豆瓣网(web 2.0)客户端实现 270 14.3.1 申请api key 270 14.3.2 activity实现 271 14.4 本章小结 282 第15章 android综合案例四——在线音乐播放器 283 15.1 关于yobo和yobo api 283 15.1.1 yobo简介 284 15.1.2 yobo功能特点 284 15.1.3 yobo api介绍 284 15.2 在线播放器架构设计 285 15.2.1 在线播放器功能规划设计 285 15.2.2 在线播放器ui设计 285 15.2.3 在线播放器数据存储设计 286 15.3 在线播放器的编程实现 286 15.3.1 申请api key 286 15.3.2 基础功能实现 287 15.3.3 实现activity 290 15.3.4 实现service 306 15.3.5 后续开发展望 310 15.4 在线音乐播放器应用演示 310 15.5 在线音乐播放器应用打包、签名和发布 311 15.6 本章小结 311 第16章 android综合案例五——手机信息查看助手 312 16.1 手机信息查看助手功能规划和可行性分析 312 16.1.1 手机信息查看助手功能规划 312 16.1.2 手机信息查看助手可行性分析 312 16.2 手机信息查看助手功能实现 313 16.2.1 手机信息查看助手主界面 313 16.2.2 查看系统信息实现 316 16.2.3 查看硬件信息 320 16.2.4 查看软件信息 324 16.2.5 获取运行时信息 326 16.2.6 文件浏览器 328 16.2.7 项目的细节完善 331 16.3 手机信息查看助手功能展望 332 16.4 项目的打包、签名和发布 332 16.5 本章小结 333 第17章 芝麻开门——android底层开发和移植概述 334 17.1 android原始码下载 334 17.2 实机测试 335 17.2.1 neo freerunner 介绍 335 17.2.2 烧录androidfs.jffs2 336 17.3 android移植技术概论 337 17.3.1 android底层技术的重要性 337 17.3.2 android移植项目介绍 338 17.3.3 android的技术优点... 340 习与实践结合提供了很好的指导。. 本书配套有400多分钟的全程开发视频光盘,指导读者快速、无障碍地学通android实战开发技术。.. 本书适合具备一定软件开发经验,想快速进入android开发领域的程序员;具备一些手机开发经验的开发者和android开发爱好者学习用书;也适合作为相关培训学校的android培训教材。... 目录 第1章 掀起你的盖头来——初识android. 1 1.1 认识android 1 1.2 android的背景 2 1.2.1 android的历史 2 1.2.2 android的发展 2 1.3 我的android我做主 2 1.3.1 开发基于android平台的应用 3 1.3.2 参加android开发者大赛 3 1.3.3 个人英雄主义再现——得到更多人的认可和尊重 3 1.3.4 获得应有的收益——android market 3 1.4 真实体验——android模拟器 4 1.4.1 模拟器概述 4 1.4.2 模拟器和真机的区别 4 1.4.3 模拟器使用注意事项 4 1.5 更上一层楼——加入android开发社区 5 1.6 本章小结 6 第2章 工欲善其事 必先利其器——搭建android开发环境 7 2.1 开发android应用前的准备 7 2.1.1 android开发系统要求 7 2.1.2 android软件开发包 7 .2.1.3 其他注意事项 8 2.2 windows开发环境搭建 8 2.2.1 jdk、eclipse、android sdk软件安装 8 2.2.2 sdk的家在哪里——设定android sdk home 14 2.2.3 真的准备好了吗——开发环境验证 14 2.2.4 创建android 虚拟设备(avd) 15 2.3 linux一族——ubuntu开发环境搭建 17 2.3.1 java、eclipse和adt插件安装 17 2.3.2 设定android sdk home 23 2.4 mac os一族——苹果开发环境搭建 24 2.5 本章小结 24 第3章 清点可用资本——android sdk介绍 25 3.1 android sdk 基础 25 3.2 深入探寻android sdk的密码 25 3.2.1 android sdk目录结构 25 3.2.2 android.jar及内部结构 27 3.2.3 sdk文档及阅读技巧 27 3.2.4 先来热热身——android sdk例子解析 28 3.2.5 sdk提供的工具介绍 31 3.3 android典型包分析 33 3.3.1 开发的基石——android api核心开发包介绍 33 3.3.2 拓展开发外延——android可选api介绍 34 3.4 本章小结 34 第4章 赚钱的市场——android market及应用发布 35 4.1 google market产生背景与目的 35 4.2 体验“选货”的乐趣——在g1上体验market的使用 35 4.3 android开发活动及特色应用 37 4.3.1 开发应用的领域 37 4.3.2 android market特色应用一览 38 4.4 你也可以做东家——申请market账号 43 4.4.1 卖东西要先入伙——准备工作 43 4.4.2 入伙过程——申请 44 4.5 开张了——在market上发布应用 45 4.5.1 发布时可能遇到的错误 45 4.5.2 卖东西也要签名——生成签名文件 46 4.5.3 打包、签名、发布应用 48 4.6 本章小结 51 第5章 千里之行 始于足下——第一个应用helloworld 52 5.1 helloworld应用分析 52 5.1.1 新建一个android工程 52 5.1.2 填写工程的信息 52 5.1.3 编程实现 53 5.1.4 运行项目 54 5.2 调试项目 54 5.2.1 设置断点 54 5.2.2 debug 项目 55 5.2.3 断点调试 55 5.3 本章小结 56 第6章 磨刀不误砍柴工——android应用程序结构介绍 57 6.1 android体系结构介绍 57 6.1.1 应用程序(application) 57 6.1.2 应用程序框架(application framework) 58 6.1.3 库(libraries)和运行环境(runtime) 58 6.2 android 应用程序组成 59 6.2.1 activity介绍 59 6.2.2 broadcast intent receiver介绍 60 6.2.3 service介绍 61 6.2.4 content provider介绍 61 6.3 android应用工程文件组成 61 6.4 本章小结 62 第7章 良好的学习开端——android基本组件介绍 63 7.1 第一印象很重要——界面ui元素介绍 63 7.1.1 视图组件(view) 63 7.1.2 视图容器组件(viewgroup) 63 7.1.3 布局组件(layout) 64 7.1.4 布局参数(layoutparams) 64 7.2 我的美丽我做主——android中应用界面布局 64 7.2.1 实例操作演示 65 7.2.2 实例编程实现 66 7.3 不积跬步 无以至千里——常用widget组件介绍 75 7.3.1 创建widget组件实例 75 7.3.2 按钮(button)介绍与应用 76 7.3.3 文本框(textview)介绍与应用 77 7.3.4 编辑框(edittext)介绍与应用 79 7.3.5 多项选择(checkbox)介绍与应用 81 7.3.6 单项选择(radiogroup )介绍与应用 83 7.3.7 下拉列表(spinner )介绍与应用 85 7.3.8 自动完成文本(autocompletetextview ) 87 7.3.9 日期选择器(datepicker)介绍与应用 89 7.3.10 时间选择器(timepicker)介绍与应用 90 7.3.11 滚动视图(scrollview)介绍与应用 91 7.3.12 进度条(progressbar)介绍与应用 92 7.3.13 拖动条(seekbar)介绍与应用 93 7.3.14 评分组件(ratingbar)介绍与应用 94 7.3.15 图片视图(imageview)介绍与应用 95 7.3.16 图片按钮(imagebutton)介绍与应用 96 7.3.17 切换图片(imageswitcher&gallery;) 96 7.3.18 网格视图(gridview)介绍与应用 99 7.3.19 标签(tab)介绍与应用 101 7.4 友好的菜单——menu介绍与实例 102 7.4.1 实例操作演示.. 103 7.4.2 实例编程实现 103 7.5 android应用的灵魂——intent和activity介绍与实例 106 7.5.1 实例操作演示 106 7.5.2 实例编程实现 106 7.6 用好列表,做好程序——列表(listview)介绍与实例 111 7.6.1 实例程序演示 111 7.6.2 实例编程实现 112 7.7 友好地互动交流——对话框(dialog)介绍与实例 119 7.8 温馨的提醒——toast和notification应用 127 7.8.1 实例操作演示 128 7.8.2 实例编程实现 129 7.9 本章小结 135 第8章 移动信息仓库——android的数据存储操作 136 8.1 android数据存储概述 136 8.2 轻轻地我保护——sharedpreferences存储 136 8.3 谁的文件,谁主宰——文件存储 140 8.4 打造自己的数据库存储——sqlite存储方式 141 8.4.1 android中对数据库操作 141 8.4.2 完整地操作数据库——日记本实例 147 8.5 我的数据你来用——contentprovider介绍 155 8.5.1 初识contentprovider 155 8.5.2 使用contentprovider读取系统数据 156 8.5.3 使用contentprovider操作数据日记本实例 159 8.6 再学一招——网络存储 171 8.7 本章小结 173 第9章 我来“广播”你的“意图”——intent和broadcast面对面 174 9.1 android应用程序的核心——intent 174 9.1.1 intent基础 174 9.1.2 用intent启动一个新的activity 174 9.1.3 intent 详细讲解 177 9.1.4 android解析intent实现 179 9.2 用广播告诉你——利用intent来广播(broadcast)事件 180 9.2.1 实现android中的广播事件 180 9.2.2 broadcast receiver介绍 181 9.3 应用实例详解 181 9.3.1 程序操作演示 182 9.3.2 实例编程实现 182 9.4 本章小结 186 第10章 一切为用户服务——service应用实例 187 10.1 认识service 187 10.2 使用service 188 10.3 service的生命周期 194 10.4 实例学习service 194 10.4.1 精彩实例一——定时提醒 194 10.4.2 精彩实例二——音乐播放器 198 10.5 本章小结 201 第11章 循序渐进——开发android应用的基本步骤 202 11.1 兵马未动 粮草先行——应用规划及架构设计 202 11.2 应用开发步骤 202 11.2.1 界面设计始终是第一位——实现ui 203 11.2.2 必备的动力源泉——数据操作和存储 203 11.2.3 华丽转身——实现多页面跳转 203 11.2.4 始终为用户做好服务——增加service 203 11.2.5 细节决定成败——完善应用细节 203 11.3 成功就在眼前——应用测试和发布 204 11.3.1 只欠东风——应用测试 204 11.3.2 可以赚钱了——发布到android market 204 11.4 本章小结 204 第12章 android综合案例一——rss阅读器实例 205 12.1 rss介绍 205 12.1.1 rss基础 205 12.1.2 rss的历史 205 12.1.3 rss语法介绍 206 12.2 sax介绍 207 12.2.1 sax基础 207 12.2.2 使用sax的作用 207 12.2.3 怎样使用sax 207 12.3 rss阅读器设计 209 12.3.1 rss阅读器功能设计 209 12.3.2 rss阅读器ui和交互流程设计 209 12.4 rss阅读器的实现 210 12.4.1 程序实体解析 210 12.4.2 实现一个自己的contenthandler 214 12.4.3 activity的实现 217 12.5 本章小结 220 第13章 android综合案例二——基于google map开发个人移动地图 221 13.1 项目ui规划 221 13.2 数据存储实现 222 13.2.1 设计数据库及表结构 222 13.2.2 设计sharepreference 存储 223 13.3 项目实现流程 223 13.3.1 创建项目工程 223 13.3.2 项目各功能及界面实现 224 13.3.3 实现数据存取 247 13.3.4 实现service 252 13.3.5 应用流程整体实现 254 13.3.6 后续开发完善 255 13.4 项目程序演示 255 13.5 项目程序签名、打包和发布 257 13.6 本章小结 259 第14章 android综合案例三——基于android的豆瓣网(web 2.0)移动客户端开发 260 14.1 关于豆瓣网和豆瓣网api 260 14.1.1 豆瓣网介绍 260 14.1.2 豆瓣网api介绍 261 14.1.3 豆瓣网api认证 261 14.1.4 豆瓣网api快速入门 264 14.1.5 豆瓣网api java库介绍 265 14.2 豆瓣网(web 2.0)客户端设计 268 14.2.1 客户端功能规划设计 268 14.2.2 ui和交互流程设计 268 14.2.3 数据存储设计 270 14.3 豆瓣网(web 2.0)客户端实现 270 14.3.1 申请api key 270 14.3.2 activity实现 271 14.4 本章小结 282 第15章 android综合案例四——在线音乐播放器 283 15.1 关于yobo和yobo api 283 15.1.1 yobo简介 284 15.1.2 yobo功能特点 284 15.1.3 yobo api介绍 284 15.2 在线播放器架构设计 285 15.2.1 在线播放器功能规划设计 285 15.2.2 在线播放器ui设计 285 15.2.3 在线播放器数据存储设计 286 15.3 在线播放器的编程实现 286 15.3.1 申请api key 286 15.3.2 基础功能实现 287 15.3.3 实现activity 290 15.3.4 实现service 306 15.3.5 后续开发展望 310 15.4 在线音乐播放器应用演示 310 15.5 在线音乐播放器应用打包、签名和发布 311 15.6 本章小结 311 第16章 android综合案例五——手机信息查看助手 312 16.1 手机信息查看助手功能规划和可行性分析 312 16.1.1 手机信息查看助手功能规划 312 16.1.2 手机信息查看助手可行性分析 312 16.2 手机信息查看助手功能实现 313 16.2.1 手机信息查看助手主界面 313 16.2.2 查看系统信息实现 316 16.2.3 查看硬件信息 320 16.2.4 查看软件信息 324 16.2.5 获取运行时信息 326 16.2.6 文件浏览器 328 16.2.7 项目的细节完善 331 16.3 手机信息查看助手功能展望 332 16.4 项目的打包、签名和发布 332 16.5 本章小结 333 第17章 芝麻开门——android底层开发和移植概述 334 17.1 android原始码下载 334 17.2 实机测试 335 17.2.1 neo freerunner 介绍 335 17.2.2 烧录androidfs.jffs2 336 17.3 android移植技术概论 337 17.3.1 android底层技术的重要性 337 17.3.2 android移植项目介绍 338 17.3.3 android的技术优点... 340
用户评论