Android应用开发攻略

《Android应用开发攻略》
基本信息
原书名:Android Cookbook
做者: (美)达尔文Ian F. Darwin [做译者介绍]
译者: 姚军
丛书名: O’Reilly精品图书系列
出版社:机械工业出版社
ISBN:9787111414117
上架时间:2013-3-7
出版日期:2013 年3月
开本:16开
页码:1
版次:1-1
所属分类:计算机 > 软件与程序设计 > 移动开发 > Android
更多关于 》》》《 Android应用开发攻略
内容简介
计算机书籍
  o'reilly media, inc.介绍
   o'reilly media经过图书、杂志、在线服务、调查研究和会议等方式传播创新知识。自1978年开始,o'reilly一直都是前沿发展的见证者和推进者。超级极客们正在开创着将来,而咱们关注真正重要的技术趋势——经过放大那些“细微的信号”来刺激社会对新科技的应用。做为技术社区中活跃的参与者,o'reilly的发展充满了对创新的倡导、创造和发扬光大。
   o'reilly为软件开发人员带来革命性的“动物书”;建立第一个商业网站(gnn);组织了影响深远的开放源代码峰会,以致于开源软件运动以此命名;创立了make杂志,从而成为diy革命的主要先锋;公司一如既往地经过多种形式缔结信息与人的纽带。o'reilly的会议和峰会集聚了众多超级极客和高瞻远瞩的商业领袖,共同描绘出开创新产业的革命性思想。做为技术人士获取信息的选择,o'reilly如今还将先锋专家的知识传递给普通的计算机用户。不管是经过书籍出版,在线服务或者面授课程,每一项o'reilly的产品都反映了公司不可动摇的理念——信息是激发创新的力量。
目录
《android应用开发攻略》
前言 1
第1章 入门 9
1.1 导言:入门 9
1.2 学习java语言 9
1.3 从命令行建立“hello, world”应用程序 11
1.4 在eclipse中建立“hello, world”应用程序 14
1.5 在windows上安装用于android开发的ide 21
1.6 理解android生命周期 28
1.7 经过adb在模拟器上安装.apk文件 29
1.8 经过slideme将应用程序安装到模拟器上 30
1.9 共享来自其余eclipse项目的java类 31
1.10 引用程序库实现外部功能 34
1.11 使用sdk样例避免棘手的状况 37
1.12 保持android sdk更新 40
1.13 从模拟器/android设备得到屏幕截图 47
1.14 程序:简单的countdowntimer示例 49
1.15 程序: android os下的小费计算器tipster 52
第2章 设计成功的应用程序 69
2.1 导言:设计成功的android应用程序 69
.2.2 异常处理 72
2.3 做为“单例”访问android应用程序对象 75
2.4 在用户旋转设备时保存数据 77
2.5 监控android设备的电量 79
2.6 在android中建立闪屏 80
2.7 设计会议/网络研讨/编程马拉松/机构用的应用程序 85
2.8 在android应用中使用google analytics 86
2.9 简单的手电筒应用程序 88
2.10 将android手机应用程序改编为平板电脑应用程序 91
2.11 设置首次运行的首选项 93
2.12 为显示格式化时间和日期 94
2.13 用keylistener控制输入 96
2.14 备份android应用程序数据 99
2.15 用提示代替工具提示 106
第3章 测试 108
3.1 导言:测试 108
3.2 在android中进行tdd 108
3.3 为应用测试设置android虚拟设备(avd) 109
3.4 用基于云的测试在多种设备上进行测试 118
3.5 测试项目的建立和使用 119
3.6 应用程序崩溃排错 123
3.7 用log.d和logcat进行调试 126
3.8 用bugsense自动从用户那里获得缺陷报告 127
3.9 使用本地运行时应用程序日志分析现场错误状况 129
3.10 为测试重现活动生命周期场景 133
3.11 用strictmode保持应用程序敏捷性 138
3.12 运行monkey程序 139
3.13 发送文本消息以及avd之间的通话 141
第4章 进程间/内通讯 143
4.1 导言:进程间/内通讯 143
4.2 用意图打开网页、电话号码或者其余内容 144
4.3 从视图中发送文本邮件 145
4.4 发送带有附件的电子邮件 148
4.5 用intent.putextra()推送字符串值 149
4.6 从子活动中获取数据到主活动中 151
4.7 保持服务运行同时显示其余应用 154
4.8 发送/接收广播消息 156
4.9 在设备重启以后启动服务 156
4.10 用线程建立响应式应用程序 157
4.11 用asynctask进行后台处理 159
4.12 用活动线程队列和处理器在线程之间发送消息 167
4.13 建立android epoch html/javascript日历 168
第5章 内容提供者 175
5.1 导言:内容提供者 175
5.2 从内容提供者获取数据 175
5.3 编写内容提供者 177
5.4 编写android远程服务 179
第6章 图形 184
6.1 导言:图形 184
6.2 使用自定义字体 184
6.3 用opengl es绘制旋转的方块 187
6.4 添加对opengl旋转方块的控制 191
6.5 徒手绘制平滑曲线 194
6.6 使用意图拍照 199
6.7 用android.media.camera拍照 201
6.8 用google zxing条码扫描程序扫描条形码或qr代码 204
6.9 用androidplot显示图表和图形 208
6.10 使用inkscape建立android启动器图标 210
6.11 从openclipart.org用paint.net建立简易启动器图标 217
6.12 使用nine patch文件 223
6.13 用android rgraph建立html5图表 227
6.14 添加简单的光栅动画 231
6.15 使用捏合缩放 234
第7章 gui 237
7.1 导言:gui 237
7.2 理解并遵循用户界面指南 238
7.3 经过解耦视图和模型处理配置更改 239
7.4 建立一个按钮及其单击事件监听器 242
7.5 以5种不一样的方式链接事件处理器 243
7.6 使用checkbox和radiobutton控件 248
7.7 用图形按钮改进ui设计 251
7.8 经过spinner类提供下拉选择器 254
7.9 处理长按/长单击事件 256
7.10 用textview和edittext显示文本字段 258
7.11 用属性和textwatcher接口限制edittext值 259
7.12 实现autocompletetextview 261
7.13 用sqlite数据库查询为autocompletetextview提供数据 263
7.14 将编辑字段转换为密码字段 265
7.15 将软键盘上的enter键改为next键 266
7.16 在活动中处理按键事件 269
7.17 让他们看到星标:使用ratingbar 270
7.18 震动视图 274
7.19 提供触觉反馈 275
7.20 在tabview中浏览不一样的活动 279
7.21 建立自定义标题栏 280
7.22 格式化数字 283
7.23 格式化正确的复数形式 287
7.24 从第一个屏幕启动第二个屏幕 290
7.25 建立出如今两个活动之间的“加载中”屏幕 299
7.26 使用slidingdrawer覆盖其余组件 300
7.27 自定义slidingdrawer组件,使动画/过渡的方向变为从上向下 303
7.28 为布局添加圆角边框 305
7.29 在android中检测手势 306
7.30 在android 1.6及更新版本中用android 3.0片断构建ui 314
7.31 使用android 3.0 photo gallery 318
7.32 建立简单的应用程序窗口部件 321
第8章 gui警告:菜单、对话框、toast和通知 326
8.1 导言:gui警告 326
8.2 建立和显示菜单 327
8.3 处理菜单选择项 328
8.4 建立子菜单 330
8.5 建立弹出/警告对话框 333
8.6 使用timepicker窗口小部件 334
8.7 建立相似iphone的滚轮选择器 336
8.8 建立标签式对话框 340
8.9 建立progressdialog 342
8.10 建立带有按钮、图像和文本的自定义对话框 344
8.11 建立可重用的“关于”对话框类 346
8.12 自定义toast显示 350
8.13 在状态栏中建立通知 352
第9章 gui:listview 358
9.1 导言:listview 358
9.2 用listview构建基于列表的应用程序 358
9.3 为listview建立“无数据”视图 362
9.4 建立具备图像和文本的高级listview 363
9.5 在listview中使用段标题 368
9.6 使用户的注意力保持在listview上 373
9.7 编写自定义列表适配器 374
9.8 处理方向变化:从listview数据值到横向图表 377
第10章 多媒体 383
10.1 导言:多媒体 383
10.2 播放youtube视频 383
10.3 使用gallery和imageswitcher视图 384
10.4 用mediarecorder捕捉视频 387
10.5 使用android的面部检测功能 390
10.6 播放来自文件的音频 393
10.7 无交互播放音频 396
10.8 使用语音识别功能 397
10.9 使用设备的朗读功能 399
第11章 数据持久性 401
11.1 导言:数据持久性 401
11.2 得到文件信息 401
11.3 读取应用自带而非文件系统中的文件 405
11.4 列出目录 406
11.5 得到关于sd卡的总空间和可用空间的信息 408
11.6 花费最小的精力提供用户首选项设置活动 409
11.7 检查默认共享首选项的一致性 413
11.8 执行高级文本搜索 415
11.9 在android应用程序中建立sqlite数据库 420
11.10 在sqlite数据库中插入数值 422
11.11 从现有的sqlite数据库加载数值 422
11.12 在sqlite中使用日期 423
11.13 用jsonobject解析json 426
11.14 用dom api解析xml文档 427
11.15 用xmlpullparser解析xml文档 429
11.16 添加联系人 433
11.17 读取联系人数据 435
第12章 电话应用程序 439
12.1 导言:电话应用程序 439
12.2 在电话铃响的时候进行某些操做 439
12.3 处理呼出电话 443
12.4 电话自动拨号 447
12.5 发送单部分和多部分sms消息 448
12.6 在android应用程序中接收sms消息 451
12.7 使用模拟器控制面板向模拟器发送sms消息 453
12.8 使用android的telephonymanager得到设备信息 453
第13章 联网应用程序 464
13.1 导论:网络 464
13.2 使用rest风格的web服务 465
13.3 用正则表达式从无结构文本中提取信息 467
13.4 用rome解析rss/atom feed 469
13.5 用md5加密明文 473
13.6 将文本转换为超连接 474
13.7 用webview访问网页 475
13.8 自定义webview 476
第14章 游戏与动画 478
14.1 导论:游戏与动画 478
14.2 用flixel-android构建android游戏 479
14.3 用andengine(android-engine)构建android游戏 482
14.4 处理定时键盘输入 488
第15章 社交网络 490
15.1 导言:社交网络 490
15.2 用http集成社交网络 490
15.3 用json加载用户的twitter动态 493
第16章 位置和地图应用程序 496
16.1 导言:位置感知应用程序 496
16.2 得到位置信息 496
16.3 在应用程序中访问gps信息 498
16.4 在设备上模拟gps坐标 500
16.5 使用地理解析和反向地理解析 503
16.6 准备google maps开发 504
16.7 将设备当前位置添加到google maps 511
16.8 在google mapview上绘制位置标志 512
16.9 在mapview上绘制多个位置标志 516
16.10 为google mapview建立图层 521
16.11 改变google mapview的模式 523
16.12 在不使用drawble对象的状况下绘制图层图标 523
16.13 在google maps上实现位置搜索 529
16.14 在一个tabview中放置mapview 530
16.15 处理mapview的长按动做 533
16.16 使用openstreetmap 537
16.17 在openstreetmap地图上建立图层 540
16.18 在openstreetmap地图上使用比例尺 543
16.19 处理openstreetmap图层上的触摸事件 544
16.20 用openstreetmap地图得到位置的更新 546
第17章 加速计 551
17.1 导言:传感器 551
17.2 检查传感器是否存在 551
17.3 使用加速计检测设备的摇晃 552
17.4 用加速计根据屏幕方向检查设备是向上仍是向下 556
17.5 用方向传感器发现android设备的方向 557
17.6 读取温度传感器 559
第18章 蓝牙 560
18.1 导言:蓝牙 560
18.2 启用蓝牙并使设备处于可发现状态 560
18.3 链接启用蓝牙的设备 562
18.4 监听和接收蓝牙链接请求 565
18.5 实现蓝牙设备发现 566
第19章 系统与设备控制 568
19.1 导言:系统与设备控制 568
19.2 访问电话网络/链接性信息 568
19.3 从清单文件获取信息 569
19.4 未来电通知改成静音、振动或者普通 570
19.5 复制文本以及从剪贴板获取文本 572
19.6 使用基于led的通知 573
19.7 使设备振动 573
19.8 从应用程序运行shell命令 575
19.9 肯定指定应用程序是否运行 576
第20章 其余编程语言和框架 578
20.1 导言:其余编程语言 578
20.2 运行外部/原生unix/linux命令 579
20.3 在ndk上用jni运行原生c/c++代码 580
20.4 从sl4a入手 585
20.5 用sl4a建立警告 588
20.6 使用sl4a读取google文档并在listview控件中显示 592
20.7 用qr码共享sl4a脚本 594
20.8 从webview中经过javascript使用原生手机功能 597
20.9 用phonegap/cordova建立平台无关的应用程序 599
第21章 字符串和国际化 602
21.1 导言:国际化 602
21.2 国际化应用程序文本 603
21.3 寻找和翻译字符串 607
21.4 处理strings.xml的微妙之处 608
第22章 打包、部署和分发/销售应用程序 614
22.1 导言:打包、部署和分发 614
22.2 建立签名证书 614
22.3 签署应用程序 617
22.4 经过android play分发应用程序 618
22.5 将admob集成到应用中 620
22.6 用proguard进行代码混淆和优化 624
22.7 提供google play市场中发布的其余应用的连接 627
 
图书信息来源: 中国互动出版网