标题：Google Android SDK开发实战演练
基本信息
出版社: 人民邮电出版社; 第1版
  Google Android SDK开发实战演练[1]何孟翰 (作者)
王世江 (译者) 
丛书名: 移动开发系列丛书 
平装: 584页 
正文语种: 简体中文 
开本: 16 
ISBN: 9787115273345 
条形码: 9787115273345 
ASIN: B0079GGABQ
内容简介
《Google Android SDK开发实战演练》从介绍Android开发工具的安装开始，通过实战的方式，由浅入深地介绍了Android程序的设计模式、UI视图、XML应用以及Activity的生命周期与实际范例等。全面讲解Android架构、Android组件与数据存储解决方案、网络通信、地图、绘图、云备份、触控、桌面、云信息推送，以及Android版权服务技术等。
在用户界面与控件方面，介绍了如何使用各种菜单与用户互动，并介绍了可让用户自由控制的动态组件；在数据访问方面，介绍了提供用户查询和操作的函数与界面，详细介绍数据库的基本操作与用户界面的互动；在用户偏好和文档存取方面，介绍了用XML文件定义用户偏好组件，规划内部和外部空间，以及说明多线程的使用方法；在通信与网络方面，介绍了短信、E-mail、网页和下载的管理方式，利用DownloadManager以规避底层繁琐的程序设计；在位置和地图方面，结合Google地图与相关API提供地理位置、景点查询、地区标记，以及说明如何在查询精度和速度之间取得平衡等；在触控与动态桌面方面，介绍了不同的触控处理方式，并扩展到制作动态桌面与用户互动；在桌面工具与绘图方面，介绍桌面小工具的生成机制和运作原理，以及使用SurfaceView绘制2D图形；在云备份和数据安全方面，介绍了巧用云备份与设备管控，让用户在重新加载系统后能立即获取个人数据，并运行设备管控提高系统安全性；在C2DM云通信推送方面，了解云信息推送并取得Google认证账号，让应用程序服务器通过C2DM服务获取即时信息；在Android硬件功能方面，介绍Android的两个重要组件—相机与感应器，利用相机获取照片，并读取感应器数值，实现重力加速感应器和光度感应器；在Google App Inventor方面，通过可视化组件的效果与功能，快速利用网页开发Android设备应用程序等。
《Google Android SDK开发实战演练》不仅可以作为致力于Android手机开发初学者的入门教程，也可作为Android手机开发程序员的参考手册。
作译者
何孟翰Mark Ho台湾大学电机工程研究所计算机科学硕士。曾任职SynopsysEDA研发工程师、IBMJ2EE软件工程师等，也是台湾地区第一批和瑞士高能物理研究中心(CERN)及美国Fermilab进行网格科技/云计算的研发人员。
曾翻译过《Hibernate实战手册》，在电脑杂志撰写软件开发相关专栏，内容包括数据库设计、数据库中间层实现、开源项目的导人/实现，以及移动平台的程序设计。
目录
《google android sdk开发实战演练》 
part Ⅰ　android与相关开发工具 
第1章　android sdk与开发工具　2 
01-01　android应用程序基础　3 
1-1-1　应用程序的组件　3 
1-1-2　组件的启动　6 
1-1-3　组件的停止　6 
01-02　准备开发环境　6 
1-2-1　下载java(for linux/windows)　6 
1-2-2　安装java(for windows)　8 
1-2-3　安装java(for linux)　9 
1-2-4　下载java(for os x)　10 
1-2-5　安装java(for mac os x)　12 
1-2-6　安装android sdk(for windows/linux/mac os x)　13 
1-2-7　安装eclipse与android adt plug in　16 
01-03　android项目结构与实机部署　22 
1-3-1　建立创业账本项目　22 
1-3-2　使用eclipse项目向导新建项目　23 
1-3-3　android的项目结构　24 
1-3-4　使用avd来新建一组模拟器　24 
.1-3-5　在eclipse调用模拟器运行　27 
1-3-6　将手机设置在调试模式，并连接至开发主机　32 
1-3-7　使用eclipse部署至实际的装置　34 
1-3-8　使用gmail来部署应用程序　35 
01-04　使用androidmanifest.xml记录重要信息　38 
1-4-1　应用程序的基本属性　38 
1-4-2　应用程序的详细设置　39 
1-4-3　应用程序的权限设置　40 
1-4-4　应用程序的效率测试　40 
1-4-5　更换应用程序的包名称(package)　41 
第2章　熟悉eclipse开发环境与相关技巧　44 
02-01　eclipse基本设置　45 
2-1-1　workspace的建立　45 
2-1-2　workspace的首选设置　45 
2-1-3　切换workspace　46 
2-1-4　项目的导出　46 
2-1-5　项目的导入　47 
2-1-6　eclipise与android sdk的在线更新　48 
2-1-7　workspace默认值的取消　49 
02-02　在eclipse上编辑java原始文件　50 
2-2-1　在java perspective编辑android源代码　51 
2-2-2　在项目中使用code assist功能　52 
2-2-3　使用code assist编辑xml文件　53 
2-2-4　在项目中使用code format功能　54 
02-03　源代码管理　55 
2-3-1　新建一个cvs仓储　55 
2-3-2　将创业账本check-in　56 
2-3-3　将创业账本和仓储内的数据作比对　56 
02-04　检查程序代码潜在的错误　57 
2-4-1　eclise的程序代码检查　58 
2-4-2　使用eclipse检查多余的程序代码　59 
2-4-3　使用proguard检查多余的程序代码　61 
第3章　初探android程序设计　66 
03-01　使用xml来宣告声明layout　67 
3-1-1　linearlayout　67 
3-1-2　relativelayout　73 
3-1-3　framelayout　77 
3-1-4　tablelayout　78 
3-1-5　修改项目画面　79 
03-02　activity的生命周期　81 
3-2-1　在activity的生命周期加载用户接口　84 
03-03　intent对象的操作　84 
3-3-1　在项目中显示用户输入画面　84 
03-04　手机状态改变时状态的传递　87 
3-4-1　手机放置状态改变的处理　87 
第4章　调试与信息传送　89 
04-01　adb的使用　90 
4-1-1　列出连接的装置或模拟器实例　90 
4-1-2　指定装置并且安装应用程序　90 
4-1-3　启动和终止adb服务　91 
4-1-4　打印调试信息　91 
4-1-5　过滤调试信息　91 
4-1-6　设置调试信息的格式　92 
04-02　使用log来调试　93 
4-2-1　在项目中利用log类来调试　93 
4-2-2　在eclipse中检查程序的调试信息　95 
4-2-3　在eclipse中过滤多余的调试信息　96 
04-03　使用toast来传递信息　98 
4-3-1　将log的调试方式转换至toast的调试方式　99 
4-3-2　利用toast来提传递文字信息　101 
4-3-3　建立更多彩多姿的toast内容　102 
04-04　使用状态栏传递信息　105 
4-4-1　新增一个服务　106 
4-4-2　新增一个回传的activity　108 
4-4-3　在服务中调用状态栏的用户告知　109 
4-4-4　在主activity中调用服务　110 
4-4-5　定制用户信息通知的版型　111 
part Ⅱ　android程序开发基础 
第5章　使用android的资源　116 
05-01　字符串的使用　117 
5-1-1　处理例外字符　118 
5-1-2　自定义字符串数组　119 
5-1-3　处理复数的字符串　121 
5-1-4　多语系的切换　126 
5-1-5　处理字符串的多语系支持　127 
5-1-6　多语系的常规　131 
05-02　颜色的使用　133 
5-2-1　变更项目中字体的颜色　135 
5-2-2　颜色组合的应用　136 
05-03　图片(drawable)的使用　140 
5-3-1　访问点阵类图形与设置项目的底图　141 
5-3-2　定义可扩展的png图文件　142 
5-3-3　图形状态组合的应用　143 
5-3-4　用颜色作为drawable　145 
5-3-5　用几何形状作drawable　146 
5-3-6　图片的多语系处理　149 
05-04　样式的使用　151 
5-4-1　定义一组新的样式　151 
5-4-2　样式的继承　153 
05-05　动画的使用　153 
5-5-1　逐格动画的使用　154 
5-5-2　在项目中加入淡出的渐变动画　154 
5-5-3　在项目中加入旋转的动画　157 
5-5-4　在项目中加入淡出且旋转的渐变动画　157 
5-5-5　利用转场动画让组件的隐藏呈现更流畅　158 
第6章　静态用户界面与控件　160 
06-01　创建“标签”式的版面配置　161 
6-1-1　创建个别的activity类　161 
6-1-2　在androidmanifest.xml中注册activity　165 
6-1-3　创建图形状态组合来作为标签　167 
6-1-4　改写版面配置，并设置为标签主控页面　167 
6-1-5　运行标签版面配置　169 
6-1-6　使用工作集(working set)来整理package explorer　171 
06-02　运用菜单与用户互动　174 
6-2-1　android的菜单种类　174 
6-2-2　创建菜单资源　176 
6-2-3　创建选项菜单　179 
6-2-4　创建变动的选项资源　181 
6-2-5　添加子菜单　184 
6-2-6　响应菜单的输入　186 
6-2-7　创建本文菜单　187 
6-2-8　创建群组本文菜单　190 
6-2-9　响应本文菜单的输入　192 
06-03　响应用户界面的事件　194 
6-3-1　使用“事件监听器”　196 
6-3-2　运用监听按钮事件实现离开程序　196 
06-04　创建与用户互动的“对话框”　199 
6-4-1　在警告对话框中加入按钮　199 
6-4-2　在警告对话框中加入条列的数据　201 
6-4-3　在警告对话框中加入单选按钮　202 
6-4-4　在警告对话框中加入多选按钮　203 
6-4-5　创建可显示“不定刻度进度”的对话框　205 
6-4-6　创建可显示“有刻度进度”的对话框　206 
6-4-7　创建“自定义版面”的对话框　208 
第7章　动态用户界面与控件　213 
07-01　使用adapterview来连接数据　214 
7-1-1　使用listview来建立收入菜单　214 
7-1-2　在收入画面加入标题与结尾　218 
7-1-3　加入用户的响应　220 
7-1-4　使用画廊版面来显示图片　222 
7-1-5　为画廊版面中的图片加上边框　227 
7-1-6　建立画廊版面的互动功能　228 
7-1-7　建立飞旋式选择器　231 
7-1-8　飞旋式选择器的回调函数　238 
07-02　使用系统的intent　241 
7-2-1　在androidmanifest中定义应用程序所需权限　241 
7-2-2　错误信息与权限设置　245 
7-2-3　使用系统的网页浏览功能　247 
07-03　窗体中的组件　250 
7-3-1　文字编辑区块　251 
7-3-2　自动完成的文字区块　257 
7-3-3　加入评分区块　258 
第8章　数据存取　261 
08-01　使用“数据提供程序”读写数据　262 
8-1-1　系统中的“联系人”数据提供程序　263 
8-1-2　操作“联系人”的data类　264 
8-1-3　操作“联系人”的其他类　268 
8-1-4　整合至adapterview　271 
8-1-5　在数据提供程序中新增联系人　273 
08-02　使用sql lite读写数据　275 
8-2-1　认识关联式数据库　275 
8-2-2　新增辅助数据库的类　276 
8-2-3　使用数据定义语言　280 
8-2-4　在数据表格中加入数据　282 
8-2-5　用listview来接收数据库查询的结果　287 
8-2-6　在数据表格中删除数据　290 
8-2-7　在数据表格中修改数据　295 
part Ⅲ　档案与通信 
第9章　用户首选与文件访问　300 
09-01　通过用户首选访问文件　301 
9-1-1　将数据写入用户首选　301 
9-1-2　查看用户首选文件　304 
9-1-3　将用户首选的数据读出　305 
9-1-4　使用preferenceactivity　307 
9-1-5　在用户首选中建立选项菜单　313 
9-1-6　在用户首选中建立核选框　315 
9-1-7　将用户首选分类　317 
09-02　文件存储方式　319 
9-2-1　使用内部存储空间　319 
9-2-2　文件的持久性　321 
9-2-3　使用外部的存储空间　322 
9-2-4　访问外部存储空间的文件　324 
9-2-5　访问外部存储空间供媒体扫描器使用　326 
9-2-6　访问外部共享存储空间　328 
09-03　将程序移到sd卡中运行(app2sd)　330 
9-3-1　将程序移到sd卡　331 
9-3-2　将程序从sd卡移回手机　333 
09-04　使用多线程解决anr问题　334 
9-4-1　操作ui线程　334 
9-4-2　使用view的post()函数在不同线程中变更ui　339 
9-4-3　使用view的postdelayed()函数，以定时在不同线程中变更ui　340 
9-4-4　使用asynctask更新ui　341 
9-4-5　使用asynctask显示进度　342 
第10章　通信与网络　345 
10-01　短信的处理　346 
10-1-1　发送短信　346 
10-1-2　监控短信的接收　348 
10-02　寄送e-mail　353 
10-03　再次查看web画面　356 
10-3-1　强化eclipse的网页编辑上传功能　356 
10-3-2　在项目中添加一个“webview”　361 
10-3-3　一次显示多个webview　363 
10-3-4　在webview中使用javascript　364 
10-04　使用android 2.3新增的下载管理器　366 
10-4-1　新增具有外部存储空间的android 2.3模拟器　367 
10-4-2　新建android 2.3 的项目空间　367 
10-4-3　指定下载的路径　370 
10-4-4　新增一个广播接收器　372 
10-4-5　接收下载完成的广播　375 
第11章　位置和地图　377 
11-01　使用位置服务　378 
11-1-1　使用位置服务实际面的考虑　378 
11-1-2　使用位置管理器取得所在位置　378 
11-1-3　在模拟器上设置位置　382 
11-02　结合地图信息的应用　384 
11-2-1　取得模拟器上的md5码　384 
11-2-2　设置可用的地图类型　389 
11-2-3　设置地图的初始位置　393 
11-2-4　在地图上标注目前的所在地　393 
11-2-5　在地图上增加景点　395 
11-2-6　定位查询　400 
第12章　触控与动态桌面壁纸　407 
12-01　触控的事件　408 
12-1-1　实现触控监听器ontouchlistener　408 
12-1-2　加上速度侦测器velocitytracker　412 
12-1-3　触控区域和多点触控　414 
12-1-4　建立手势数据库　417 
12-1-5　在程序中调用手势标识　419 
12-02　活动壁纸　422 
12-2-1　实现动态壁纸　422 
part Ⅳ　device相关信息/google云端服务与android应用 
第13章　桌面小工具与绘图　432 
13-01　桌面小工具　433 
13-1-1　在程序中声明小工具　434 
13-1-2　小工具的版面配置　434 
13-1-3　实现小工具　435 
13-1-4　实现小工具的配置组件　440 
13-1-5　小工具和用户互动　446 
13-02　2d绘图的功能　448 
13-2-1　画布与定制的viewa　448 
13-2-2　设置绘制样式——画圆和椭圆　451 
13-2-3　设置线条与扇形圆弧　453 
13-2-4　设置文字和路径　455 
13-2-5　结合绘图与触控　457 
第14章　云备份与数据安全　462 
14-01　云备份　463 
14-1-1　创建云备份用的项目　463 
14-1-2　创建备份　465 
14-1-3　使用云备份辅助程序来备份用户首选　471 
14-1-4　操作云备份辅助程序来备份内部文件　473 
14-02　装置控管　474 
14-2-1　创建装置管理器　475 
14-2-2　设置密码并锁定屏幕　483 
14-2-3　设置密码的强度　488 
14-2-4　设置系统重置　489 
第15章　c2dm云信息推送　495 
15-01　云信息推送的架构　496 
15-1-1　注册c2dm服务　496 
15-1-2　云信息推送的组件　499 
15-1-3　云信息推送的生命周期　499 
15-1-4　用户对云信息的设置　500 
15-02　云信息客户端的实现　500 
15-2-1　修改manifest文件　501 
15-2-2　注册/取消注册c2dm服务　503 
15-2-3　聆听注册/取消注册的广播事件　505 
15-2-4　登录模拟器的账户　506 
15-2-5　取得注册码　507 
15-3　云信息服务器端的实现　507 
15-3-1　简化实现的情境　509 
15-3-2　取得认证的代码　509 
15-3-3　发送信息至c2dm服务器　511 
15-3-4　客户端接收c2dm服务器传回的信息　513 
第16章　android的硬件功能　517 
16-01　使用相机　518 
16-1-1　使用相机的组件　518 
16-1-2　surfaceview的运作周期　518 
16-1-3　相机的运作周期　519 
16-1-4　新增相机的项目与设置权限　520 
16-1-5　相机操作的用户界面　522 
16-1-6　添加surfaceview与相机相关组件　523 
16-1-7　实现主程序逻辑　526 
16-1-8　模拟器的旋转与实机测试　529 
16-02　使用感应器　531 
16-2-1　取得感应器的列表　531 
16-2-2　取得感应器的数值　534 
16-2-3　使用光度感应器　534 
16-2-4　重力加速度与坐标系　536 
16-2-5　使用重力加速度感应器　536 
附录a　google app inventor　539 
a-1　登录google app inventor服务　540 
a-2　安装客户端的组件　541 
a-2-1　组件在osx环境的安装　541 
a-2-2　组件在windows环境的安装　542 
a-2-3　组件在ubuntu环境的安装　543 
a-3　进入应用程序创作家　544 
a-3-1　按钮组件与使用区块编辑器　548 
a-3-2　触控组件与区块编辑器的参数传送　550 
a-3-3　使用计时器组件　554 
附录b　android的版权服务　561 
b-1　android的付费机制　562 
b-1-1　版权服务的架构　563 
b-1-2　取得版权服务的公开密钥　564 
b-1-3　版权服务器的响应代码　564 
b-1-4　测试账号与测试周期　565 
b-2　实现android版权服务　566 
b-2-1　下载版权验证函数库　566 
b-2-2　设立一个版权验证函数库项目　567 
b-2-3　在主程序中加载函数库项目　568 
b-2-4　增加android的权限　570 
b-2-5　使用严格模式　571 
b-2-6　调整静态服务器传回值以测试结果　575 
b-2-7　服务器端的版权检查策略　576 
b-2-8　实现加密编码函数　577 
b-2-9　使用服务器的版权检查模式　578