Android移动应用开发从入门到精通

Android移动应用开发从入门到精通
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] ,
2010-07
版次: 1
ISBN: 9787115230195
定价: 75.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 470页
字数: 683千字
正文语种: 简体中文
25人买过
  •   《Android移动应用开发从入门到精通》涵盖了Android开发从概念、技术到市场推广应用的全部话题,内容包括:Android概览、Android应用程序设计精髓、Android用户界面设计精髓、常用AndroidAPI、更多Android应用程序设计原则、对外发布你的Android应用程序和附录等7个部分。附录还包含了Android开发常用工具(如模拟器、DDMS、调试桥和SQLite等)的使用指南。
      《Android移动应用开发从入门到精通》不仅适合Android应用程序开发人员阅读,还能为QA测试人员提供指导。另外《Android移动应用开发从入门到精通》还可以帮助项目经理更好地管理项目进程和项目团队,帮助市场推广人员更好地把握市场、创造令人瞩目的销售业绩。   ShaneConder拥有丰富的开发经验,在过去的10年中,他把主要精力集中在移动和嵌入式开发领域,迄今已设计并开发了基于BREW、J2ME、WindowsMobile和Android的诸多商业软件。Shane撰写了大量关于移动通信行业和评估移动开发平台的文章,这些文章发表在他的个人技术博客上,在领域内受到了广泛的关注。Shane获得了加州大学授予的计算机科学学士学位。
      LaurenDarcey是一家专注于移动开发的小软件公司的技术主管。 第一部分Android概览
    第1章Android简介2
    1.1移动软件开发简史2
    1.1.1遥想当年2
    1.1.2“砖头”3
    1.1.3无线应用协议(WAP)4
    1.1.4商用移动平台6
    1.2开放手机联盟(OHA)8
    1.2.1无线Google8
    1.2.2开放手机联盟成立8
    1.2.3制造商:设计Android手机9
    1.2.4内容提供商:开发Android应用程序9
    1.2.5移动操作系统:传播Android体验9
    1.2.6充分发挥Android的优势10
    1.3Android平台的不同之处10
    1.3.1Android:下一代平台10
    1.3.2免费开放源代码11
    1.3.3熟悉和廉价的开发工具11
    1.3.4合理的开发人员学习曲线12
    1.3.5强大的应用程序开发支持12
    1.3.6丰富、安全的应用集成12
    1.3.7无障碍发布13
    1.3.8为应用程序提供的“自由市场”13
    1.3.9新生并逐渐成长的平台14
    1.4Android平台14
    1.4.1Android的基本体系结构14
    1.4.2安全与许可权限16
    1.4.3开发Android应用程序17
    小结18
    参考资料和更多信息19

    第2章你的Android开发环境20
    2.1配置你的开发环境20
    2.1.1支持的操作系统20
    2.1.2安装Java开发包(JDK)20
    2.1.3安装Eclipse开发环境21
    2.1.4其他开发环境22
    2.1.5安装Android软件开发包(SDK)22
    2.1.6安装与配置AndroidEclipse插件(ADT)23
    2.1.7ADT安装释疑25
    2.1.8升级AndroidSDK25
    2.1.9AndroidSDK的问题25
    2.1.10配置Android编译硬件26
    2.1.11配置操作系统以适应设备编译26
    2.1.12本书使用的开发环境27
    2.2探索AndroidSDK27
    2.2.1AndroidSDK许可协议27
    2.2.2AndroidSDK文档28
    2.2.3Android应用程序框架29
    2.2.4Android工具30
    2.2.5Android示例应用程序33
    小结34
    参考资料和更多信息34

    第3章编写第一个Android应用程序35
    3.1测试你的开发环境35
    3.1.1在Eclipse工程中导入Snake应用程序35
    3.1.2为Snake工程创建Android虚拟设备(AVD)37
    3.1.3为Snake工程创建运行配置参数37
    3.1.4在Android模拟器中运行Snake应用程序39
    3.2构建你的第一个Android应用程序39
    3.2.1创建和配置新的Android工程40
    3.2.2Android应用程序的核心文件和目录40
    3.2.3为新工程创建Android虚拟设备41
    3.2.4为工程配置运行参数41
    3.2.5在模拟器中运行Android应用程序42
    3.2.6在模拟器中调试Android应用程序43
    3.2.7为Android应用程序添加日志记录45
    3.2.8为应用程序添加媒体支持46
    3.2.9为应用程序添加基于位置的服务(LBS)48
    3.2.10在硬件上调试应用程序50
    小结51
    参考资料和更多信息51

    第二部分Android应用程序设计精髓
    第4章剖析Android应用程序54
    4.1Android应用程序的生存周期54
    4.1.1使用Activity执行应用程序任务54
    4.1.2使用Intent在不同Activity之间实现跳转55
    4.1.3AndroidActivity的生存周期58
    4.2使用AndroidManifest文件定义应用程序62
    4.2.1管理你的应用程序身份65
    4.2.2注册Activity和其他应用程序组件65
    4.2.3使用许可权限67
    4.2.4指定应用程序所需输入设备和软件69
    4.2.5使用库和AndroidSDK版本70
    4.2.6在Manifest文件中定义应用程序的其他配置参数71
    小结71

    第5章管理应用程序资源72
    5.1什么是资源72
    5.1.1应用程序资源的存储方式和位置72
    5.1.2资源目录的层级结构72
    5.1.3资源的类型73
    5.1.4存储不同的资源类型74
    5.1.5使用程序访问资源75
    5.2实例:使用Eclipse设置简单资源75
    5.3使用资源78
    5.3.1使用String(字符串)资源79
    5.3.2使用格式化的String资源80
    5.3.3使用String数组81
    5.3.4使用颜色82
    5.3.5使用尺寸82
    5.3.6使用简单Drawable资源83
    5.3.7使用图像84
    5.3.8使用动画88
    5.3.9使用菜单89
    5.3.10使用XML文件90
    5.3.11使用原始文件91
    5.3.12资源引用92
    5.3.13使用布局(layout)93
    5.3.14使用样式(style)97
    5.3.15使用主题(theme)100
    5.4引用系统资源100
    5.5管理各种应用程序配置101
    5.5.1为本地化和设备配置指定资源102
    5.5.2在程序中使用适当的配置资源104
    5.5.3高效地组织应用程序资源106
    小结107
    参考资料和更多信息108

    第三部分Android用户界面设计精髓
    第6章探索用户界面屏幕元素110
    6.1Android视图、Widget和布局简介110
    6.1.1Android视图简介110
    6.1.2AndroidWidget简介110
    6.1.3Android布局简介111
    6.2使用TextView显示文本111
    6.2.1配置布局和尺寸112
    6.2.2在文本中创建上下文链接113
    6.3使用EditText和Spinner获取用户文本114
    6.3.1使用自动补全辅助用户116
    6.3.2使用输入过滤器约束用户输入118
    6.3.3使用SpinnerWidget的下拉列表约束用户输入119
    6.4使用按钮、多选框和单选组121
    6.4.1使用基本按钮122
    6.4.2使用多选框和Toggle按钮123
    6.4.3使用RadioGroup和RadioButton124
    6.5获取用户输入的日期和时间126
    6.6向用户显示信息127
    6.6.1使用ProgressBar指示进度128
    6.6.2使用SeekBar指示和调整进度130
    6.6.3使用RatingBar指示和调整评分130
    6.6.4使用Chronometer指示时间推移131
    6.6.5使用AnalogClock和DigitalClock指示当前时间133
    6.7为用户提供选项和上下文菜单133
    6.7.1使用选项菜单133
    6.7.2使用ContextMenu(上下文菜单)136
    6.8掌控用户事件137
    6.8.1监听触摸模式状态改变138
    6.8.2监听全屏幕上的事件138
    6.8.3监听长时单击139
    6.8.4监听手势140
    6.8.5监听焦点改变142
    6.8.6监听屏幕旋转143
    6.9使用样式143
    6.10使用主题146
    小结147

    第7章使用布局设计Android用户界面149
    7.1创建Android用户界面149
    7.1.1使用XML资源创建布局149
    7.1.2使用代码创建布局150
    7.2使用ViewGroup组织用户界面152
    7.3使用内建的布局类156
    7.3.1使用AbsoluteLayout158
    7.3.2使用FrameLayout159
    7.3.3使用LinearLayout161
    7.3.4使用RelativeLayout162
    7.3.5使用TableLayout165
    7.3.6在屏幕上使用多布局167
    7.4使用内建的View容器类167
    7.4.1结合AdapterView使用数据驱动View容器168
    7.4.2使用TabActivity和TabHost组织视图171
    7.4.3探索其他视图容器173
    7.5使用AppWidget显示应用程序视图175
    7.6成为AppWidget提供者176
    小结177

    第8章Android绘图与动画178
    8.1屏幕绘图178
    8.2使用文字182
    8.2.1使用默认字体182
    8.2.2使用自定义字体183
    8.2.3测量文字所需的屏幕尺寸184
    8.3使用位图184
    8.3.1在画布上绘制位图185
    8.3.2缩放位图185
    8.3.3使用Matrix变换位图186
    8.4使用图形186
    8.4.1用XML资源定义图形187
    8.4.2使用程序定义图形187
    8.4.3绘制各种图形188
    8.5使用动画193
    8.5.1使用逐帧动画194
    8.5.2使用补间动画195
    小结200

    第四部分常用AndroidAPI
    第9章使用Android数据和存储API202
    9.1使用应用程序首选项202
    9.1.1创建私有和共享首选项203
    9.1.2搜索和读取首选项203
    9.1.3新增、修改和删除首选项204
    9.1.4使用Android文件系统查找首选项数据204
    9.2使用文件和目录205
    9.2.1探索Android应用程序目录206
    9.2.2在默认应用程序目录中创建和写入文件206
    9.2.3在默认应用程序目录中读取文件内容207
    9.2.4使用Android文件系统操作其他目录和文件208
    9.3使用SQLite数据库存储结构化数据209
    9.3.1创建SQLite数据库210
    9.3.2创建、修改和删除数据库记录212
    9.3.3在SQLite数据库中执行查询215
    9.3.4关闭和删除SQLite数据库220
    9.3.5设计持久数据库220
    9.3.6向应用程序界面绑定数据223
    9.4使用ContentProvider在应用程序间共享数据227
    9.4.1为访问图像调整ContentProvider227
    9.4.2探索Android的部分内建ContentProvider232
    9.4.3在ContentProvider中修改数据239
    9.5使用自定义ContentProvider扩展你的Android应用程序241
    9.5.1继承ContentProvider241
    9.5.2定义数据URI242
    9.5.3定义数据列242
    9.5.4实现query()、insert()、update()、delete()和getType()243
    9.5.5更新Manifest文件248
    9.6使用LiveFolder249
    小结251
    参考资料和更多信息252

    第10章使用Android网络API253
    10.1访问因特网(HTTP)253
    10.1.1从Web读取数据253
    10.1.2使用HttpURLConnection254
    10.1.3解析从网络获取的XML255
    10.1.4使用线程访问网络257
    10.1.5显示从网络资源获取的图像260
    10.1.6获取Android网络状态262
    10.2使用WebView浏览Web263
    小结265
    参考资料和更多信息266

    第11章使用位置服务(LBS)API267
    11.1使用全球定位服务(GPS)267
    11.1.1查找你的位置267
    11.1.2定位你的模拟器269
    11.2位置地理编码269
    11.3在地图上标注位置272
    11.3.1地图标注内容272
    11.3.2地图标注视图272
    11.3.3获得调试APIKey274
    11.3.4拖曳地图视图275
    11.3.5缩放地图视图276
    11.3.6标记点277
    11.4位置服务扩展应用281
    小结282
    参考资料和更多信息282

    第12章使用Android多媒体API283
    12.1操作静态图像283
    12.1.1使用摄像头捕捉静态图像283
    12.1.2分享图像287
    12.1.3将图像指定为墙纸288
    12.2使用视频289
    12.2.1录制视频289
    12.2.2播放视频290
    12.3使用音频291
    12.3.1录制音频291
    12.3.2播放音频293
    12.3.3共享音频294
    12.3.4使用铃音294
    小结295

    第13章使用Android电话API296
    13.1使用电话功能包296
    13.1.1为获取手机状态信息取得许可权限296
    13.1.2请求获取通话状态297
    13.1.3请求获取服务信息299
    13.1.4使用电话号码299
    13.2使用短消息300
    13.2.1获得发送和接收短消息的许可权限301
    13.2.2发送短消息301
    13.2.3接收短消息303
    13.3拨打电话305
    小结307
    参考资料和更多信息307

    第14章通过OpenGLES使用Android3D图形308
    14.1定义OpenGLES308
    14.2使用基于OpenGLES的Android3D应用程序309
    14.2.1创建SurfaceView309
    14.2.2启动OpenGLES线程311
    14.2.3初始化EGL312
    14.2.4初始化GL314
    14.2.5绘制315
    14.3绘制3D物体316
    14.3.1绘制顶点(vertices)316
    14.3.2为顶点着色317
    14.3.3绘制更多复杂物体318
    14.3.4照亮你的场景320
    14.3.5为对象赋予材质321
    14.4同Android视图和事件进行交互323
    14.4.1允许OpenGL线程向应用程序线程发送信息324
    14.4.2允许应用程序线程向OpenGL线程发送信息325
    14.5清理OpenGLES326
    14.6使用GLSurfaceView类327
    小结330
    参考资料和更多信息330

    第15章使用Android可选硬件API331
    15.1使用设备传感器331
    15.2使用Wi-Fi334
    15.3监视电池337
    小结339

    第五部分更多Android应用程序设计原则
    第16章使用通知342
    16.1使用状态栏发布通知342
    16.2让手机震动345
    16.3灯光闪烁346
    16.4发出声响347
    16.5自定义通知348
    小结350

    第17章使用服务351
    17.1创建服务351
    17.2控制服务355
    17.3实现远程接口356
    17.4实现可包装(parcelable)类358
    小结360

    第六部分对外发布你的Android应用程序
    第18章移动软件开发过程364
    18.1移动开发过程概览364
    18.2选择一种软件开发方法364
    18.2.1理解“瀑布模型”的危险365
    18.2.2认识迭代式开发的价值365
    18.3整合应用程序需求366
    18.3.1确定工程需求366
    18.3.2为移动应用程序开发用例367
    18.3.3吸纳第三方需求367
    18.3.4管理手机设备数据库368
    18.4项目风险评估370
    18.4.1确定目标手机370
    18.4.2获取目标手机371
    18.4.3确定应用程序需求的可行性372
    18.4.4理解质量保障的风险372
    18.5编写基本项目文档373
    18.5.1为质量保障制定测试计划374
    18.5.2提供第三方所需的文档374
    18.5.3提供维护和移植所需的文档374
    18.6实现移动应用程序配置管理系统374
    18.6.1选择一个源代码控制系统374
    18.6.2实现一个可用的版本管理系统375
    18.7设计移动应用程序375
    18.7.1认识移动设备的局限375
    18.7.2移动应用程序体系结构探索376
    18.7.3可扩展和维护设计376
    18.7.4应用程序交互设计377
    18.8开发移动应用程序377
    18.9测试移动应用程序378
    18.10发布移动应用程序378
    18.10.1确定目标市场379
    18.10.2将市场需求引入应用程序需求379
    18.11支持和维护移动应用程序379
    18.11.1维护适当的应用程序文档379
    18.11.2管理服务器的动态更改379
    18.11.3确定低风险移植机会380
    小结380
    参考资料和更多信息380

    第19章开发和测试“防弹”Android应用程序381
    19.1“防弹”移动应用程序设计最佳实践381
    19.1.1满足移动用户的需求382
    19.1.2为移动设备设计用户界面382
    19.1.3设计稳定、灵敏的移动应用程序384
    19.1.4设计安全的移动应用程序385
    19.1.5在设计移动应用程序时考虑利益的最大化385
    19.1.6在Android应用程序设计时使用第三方标准386
    19.1.7设计便于维护和升级的移动应用程序386
    19.1.8在应用程序设计中使用Andriod工具388
    19.1.9避免设计时的愚蠢错误388
    19.2“防弹”移动应用程序开发最佳实践388
    19.2.1设计有效的移动开发过程389
    19.2.2提早和经常地测试应用程序可行性389
    19.2.3使用代码标准、代码检查和单元测试以提高代码质量389
    19.2.4处理某单一手机的缺陷391
    19.2.5在应用程序开发中使用Android工具392
    19.2.6避免开发时的愚蠢错误392
    19.3移动应用程序测试最佳实践392
    19.3.1设计一个应用程序漏洞跟踪系统392
    19.3.2管理测试环境393
    19.4确定设备的“洁净”初始状态394
    19.4.1模仿现实世界的活动395
    19.4.2尽量全面地进行测试395
    19.4.3在应用程序测试中使用Android工具400
    19.4.4避免测试时的愚蠢错误401
    19.4.5外包测试的责任401
    小结401
    参考资料和更多信息401

    第20章销售你的Android应用程序402
    20.1为发布而打包你的应用程序402
    20.1.1准备封装你的代码402
    20.1.2准备你的软件包403
    20.1.3测试软件包的发布版本406
    20.1.4认证你的Android应用程序406
    20.2赚钱406
    20.2.1在AndroidMarket上销售你的应用程序406
    20.2.2在自己的服务器上销售你的应用程序411
    20.2.3销售应用程序的其他途径412
    20.2.4保护你的知识产权413
    20.2.5让用户付费413
    小结414
    参考资料和更多信息414

    第七部分附录
    附录AAndroid模拟器快速入门416
    A.1玩转默认模拟器416
    A.2使用Android虚拟设备管理模拟器配置418
    A.3列表显示Android目标操作系统418
    A.3.1创建AVD419
    A.3.2列表显示所有已知的AVD424
    A.3.3删除AVD424
    A.3.4使用其他的AVD命令425
    A.4使用启动选项控制模拟器行为425
    A.4.1以命令行的方式配置模拟器启动选项426
    A.4.2使用Eclipse配置模拟器启动选项426
    A.5配置模拟器的位置信息427
    A.6在两个模拟器实例之间拨打电话427
    A.7在两个模拟器实例之间发送消息429
    A.8通过控制台与模拟器交互429
    A.8.1使用控制台模拟来电429
    A.8.2使用控制台模拟短消息429
    A.8.3使用控制台发送GPS坐标430
    A.8.4使用控制台监视网络状态431
    A.8.5使用控制台操作电源设置431
    A.8.6使用其他控制台命令432
    A.9享受模拟器432
    A.10认识模拟器的局限433

    附录BAndroidDDMS快速入门434
    B.1独立或结合Eclipse使用DDMS434
    B.2熟悉DDMS的关键特性436
    B.3使用进程436
    B.3.1向Android应用程序关联调试器437
    B.3.2监视Android应用程序的线程活动437
    B.3.3在Android应用程序中触发垃圾回收(GC)438
    B.3.4监视Android应用程序的堆活动438
    B.3.5终止Android进程438
    B.4使用文件浏览器439
    B.4.1从模拟器或设备上拷贝文件440
    B.4.2向模拟器或设备拷贝文件440
    B.4.3删除模拟器或设备上的文件440
    B.5使用模拟器控制441
    B.5.1模拟语音来电441
    B.5.2模拟短消息接收441
    B.5.3发送位置坐标442
    B.6使用应用程序日志442
    B.7在模拟器或目标设备上截屏443

    附录CAndroid调试桥快速入门445
    C.1列表显示连接到计算机的设备和模拟器445
    C.2针对特定设备使用ADB命令446
    C.3启动和停止ADB服务进程446
    C.3.1停止ADB服务进程446
    C.3.2启动和检测ADB服务进程446
    C.4使用ADB从/向Android应用程序拷贝文件446
    C.4.1向设备发送文件447
    C.4.2从设备提取文件447
    C.5使用ADB安装和卸载Android应用程序447
    C.5.1使用ADB安装应用程序447
    C.5.2使用ADB重装应用程序448
    C.5.3使用ADB卸载应用程序448
    C.6使用LogCat记录日志448
    C.6.1显示所有的日志信息448
    C.6.2更改日志记录模式以包含日期和时间信息449
    C.6.3过滤日志信息449
    C.6.4清除日志450
    C.6.5将日志输出重定向至一个文件450
    C.6.6访问次级日志450
    C.7生成Bug报告451
    C.8发布Shell命令451
    C.8.1发布单条Shell命令451
    C.8.2启动和使用一个Shell会话451
    C.8.3使用ADBShell启动和终止模拟器452
    C.8.4使用ADBShell查看SQLite数据库452
    C.8.5在ADBShell中使用Monkey进行应用程序压力测试452
    C.8.6通过Shell安装和使用自定义二进制文件455
    C.9其他ADB命令探索456

    附录DSQLite快速入门457
    D.1探索SQLite的常见任务457
    D.2使用sqlite3命令行接口457
    D.2.1启动sqlite3命令行接口并连接数据库458
    D.2.2探索你的数据库458
    D.2.3导入和导出数据库460
    D.2.4在命令行中执行SQL命令461
    D.2.5窥视SQLite内部462
    D.2.6使用其他的sqlite3命令462
    D.2.7认识SQLite的局限462
    D.3通过实例理解SQLite:学生成绩数据库463
    D.3.1设计学生成绩数据库的模式463
    D.3.2结合AUTOINCREMENT创建简单表464
    D.3.3向表中插入数据464
    D.3.4使用SELECT查询表数据465
    D.3.5创建具有外键和复合主键的表466
    D.3.6修改和更新表数据467
    D.3.7使用JOIN进行多表查询467
    D.3.8使用计算列468
    D.3.9对计算列使用子查询469
    D.3.10删除表470
  • 内容简介:
      《Android移动应用开发从入门到精通》涵盖了Android开发从概念、技术到市场推广应用的全部话题,内容包括:Android概览、Android应用程序设计精髓、Android用户界面设计精髓、常用AndroidAPI、更多Android应用程序设计原则、对外发布你的Android应用程序和附录等7个部分。附录还包含了Android开发常用工具(如模拟器、DDMS、调试桥和SQLite等)的使用指南。
      《Android移动应用开发从入门到精通》不仅适合Android应用程序开发人员阅读,还能为QA测试人员提供指导。另外《Android移动应用开发从入门到精通》还可以帮助项目经理更好地管理项目进程和项目团队,帮助市场推广人员更好地把握市场、创造令人瞩目的销售业绩。
  • 作者简介:
      ShaneConder拥有丰富的开发经验,在过去的10年中,他把主要精力集中在移动和嵌入式开发领域,迄今已设计并开发了基于BREW、J2ME、WindowsMobile和Android的诸多商业软件。Shane撰写了大量关于移动通信行业和评估移动开发平台的文章,这些文章发表在他的个人技术博客上,在领域内受到了广泛的关注。Shane获得了加州大学授予的计算机科学学士学位。
      LaurenDarcey是一家专注于移动开发的小软件公司的技术主管。
  • 目录:
    第一部分Android概览
    第1章Android简介2
    1.1移动软件开发简史2
    1.1.1遥想当年2
    1.1.2“砖头”3
    1.1.3无线应用协议(WAP)4
    1.1.4商用移动平台6
    1.2开放手机联盟(OHA)8
    1.2.1无线Google8
    1.2.2开放手机联盟成立8
    1.2.3制造商:设计Android手机9
    1.2.4内容提供商:开发Android应用程序9
    1.2.5移动操作系统:传播Android体验9
    1.2.6充分发挥Android的优势10
    1.3Android平台的不同之处10
    1.3.1Android:下一代平台10
    1.3.2免费开放源代码11
    1.3.3熟悉和廉价的开发工具11
    1.3.4合理的开发人员学习曲线12
    1.3.5强大的应用程序开发支持12
    1.3.6丰富、安全的应用集成12
    1.3.7无障碍发布13
    1.3.8为应用程序提供的“自由市场”13
    1.3.9新生并逐渐成长的平台14
    1.4Android平台14
    1.4.1Android的基本体系结构14
    1.4.2安全与许可权限16
    1.4.3开发Android应用程序17
    小结18
    参考资料和更多信息19

    第2章你的Android开发环境20
    2.1配置你的开发环境20
    2.1.1支持的操作系统20
    2.1.2安装Java开发包(JDK)20
    2.1.3安装Eclipse开发环境21
    2.1.4其他开发环境22
    2.1.5安装Android软件开发包(SDK)22
    2.1.6安装与配置AndroidEclipse插件(ADT)23
    2.1.7ADT安装释疑25
    2.1.8升级AndroidSDK25
    2.1.9AndroidSDK的问题25
    2.1.10配置Android编译硬件26
    2.1.11配置操作系统以适应设备编译26
    2.1.12本书使用的开发环境27
    2.2探索AndroidSDK27
    2.2.1AndroidSDK许可协议27
    2.2.2AndroidSDK文档28
    2.2.3Android应用程序框架29
    2.2.4Android工具30
    2.2.5Android示例应用程序33
    小结34
    参考资料和更多信息34

    第3章编写第一个Android应用程序35
    3.1测试你的开发环境35
    3.1.1在Eclipse工程中导入Snake应用程序35
    3.1.2为Snake工程创建Android虚拟设备(AVD)37
    3.1.3为Snake工程创建运行配置参数37
    3.1.4在Android模拟器中运行Snake应用程序39
    3.2构建你的第一个Android应用程序39
    3.2.1创建和配置新的Android工程40
    3.2.2Android应用程序的核心文件和目录40
    3.2.3为新工程创建Android虚拟设备41
    3.2.4为工程配置运行参数41
    3.2.5在模拟器中运行Android应用程序42
    3.2.6在模拟器中调试Android应用程序43
    3.2.7为Android应用程序添加日志记录45
    3.2.8为应用程序添加媒体支持46
    3.2.9为应用程序添加基于位置的服务(LBS)48
    3.2.10在硬件上调试应用程序50
    小结51
    参考资料和更多信息51

    第二部分Android应用程序设计精髓
    第4章剖析Android应用程序54
    4.1Android应用程序的生存周期54
    4.1.1使用Activity执行应用程序任务54
    4.1.2使用Intent在不同Activity之间实现跳转55
    4.1.3AndroidActivity的生存周期58
    4.2使用AndroidManifest文件定义应用程序62
    4.2.1管理你的应用程序身份65
    4.2.2注册Activity和其他应用程序组件65
    4.2.3使用许可权限67
    4.2.4指定应用程序所需输入设备和软件69
    4.2.5使用库和AndroidSDK版本70
    4.2.6在Manifest文件中定义应用程序的其他配置参数71
    小结71

    第5章管理应用程序资源72
    5.1什么是资源72
    5.1.1应用程序资源的存储方式和位置72
    5.1.2资源目录的层级结构72
    5.1.3资源的类型73
    5.1.4存储不同的资源类型74
    5.1.5使用程序访问资源75
    5.2实例:使用Eclipse设置简单资源75
    5.3使用资源78
    5.3.1使用String(字符串)资源79
    5.3.2使用格式化的String资源80
    5.3.3使用String数组81
    5.3.4使用颜色82
    5.3.5使用尺寸82
    5.3.6使用简单Drawable资源83
    5.3.7使用图像84
    5.3.8使用动画88
    5.3.9使用菜单89
    5.3.10使用XML文件90
    5.3.11使用原始文件91
    5.3.12资源引用92
    5.3.13使用布局(layout)93
    5.3.14使用样式(style)97
    5.3.15使用主题(theme)100
    5.4引用系统资源100
    5.5管理各种应用程序配置101
    5.5.1为本地化和设备配置指定资源102
    5.5.2在程序中使用适当的配置资源104
    5.5.3高效地组织应用程序资源106
    小结107
    参考资料和更多信息108

    第三部分Android用户界面设计精髓
    第6章探索用户界面屏幕元素110
    6.1Android视图、Widget和布局简介110
    6.1.1Android视图简介110
    6.1.2AndroidWidget简介110
    6.1.3Android布局简介111
    6.2使用TextView显示文本111
    6.2.1配置布局和尺寸112
    6.2.2在文本中创建上下文链接113
    6.3使用EditText和Spinner获取用户文本114
    6.3.1使用自动补全辅助用户116
    6.3.2使用输入过滤器约束用户输入118
    6.3.3使用SpinnerWidget的下拉列表约束用户输入119
    6.4使用按钮、多选框和单选组121
    6.4.1使用基本按钮122
    6.4.2使用多选框和Toggle按钮123
    6.4.3使用RadioGroup和RadioButton124
    6.5获取用户输入的日期和时间126
    6.6向用户显示信息127
    6.6.1使用ProgressBar指示进度128
    6.6.2使用SeekBar指示和调整进度130
    6.6.3使用RatingBar指示和调整评分130
    6.6.4使用Chronometer指示时间推移131
    6.6.5使用AnalogClock和DigitalClock指示当前时间133
    6.7为用户提供选项和上下文菜单133
    6.7.1使用选项菜单133
    6.7.2使用ContextMenu(上下文菜单)136
    6.8掌控用户事件137
    6.8.1监听触摸模式状态改变138
    6.8.2监听全屏幕上的事件138
    6.8.3监听长时单击139
    6.8.4监听手势140
    6.8.5监听焦点改变142
    6.8.6监听屏幕旋转143
    6.9使用样式143
    6.10使用主题146
    小结147

    第7章使用布局设计Android用户界面149
    7.1创建Android用户界面149
    7.1.1使用XML资源创建布局149
    7.1.2使用代码创建布局150
    7.2使用ViewGroup组织用户界面152
    7.3使用内建的布局类156
    7.3.1使用AbsoluteLayout158
    7.3.2使用FrameLayout159
    7.3.3使用LinearLayout161
    7.3.4使用RelativeLayout162
    7.3.5使用TableLayout165
    7.3.6在屏幕上使用多布局167
    7.4使用内建的View容器类167
    7.4.1结合AdapterView使用数据驱动View容器168
    7.4.2使用TabActivity和TabHost组织视图171
    7.4.3探索其他视图容器173
    7.5使用AppWidget显示应用程序视图175
    7.6成为AppWidget提供者176
    小结177

    第8章Android绘图与动画178
    8.1屏幕绘图178
    8.2使用文字182
    8.2.1使用默认字体182
    8.2.2使用自定义字体183
    8.2.3测量文字所需的屏幕尺寸184
    8.3使用位图184
    8.3.1在画布上绘制位图185
    8.3.2缩放位图185
    8.3.3使用Matrix变换位图186
    8.4使用图形186
    8.4.1用XML资源定义图形187
    8.4.2使用程序定义图形187
    8.4.3绘制各种图形188
    8.5使用动画193
    8.5.1使用逐帧动画194
    8.5.2使用补间动画195
    小结200

    第四部分常用AndroidAPI
    第9章使用Android数据和存储API202
    9.1使用应用程序首选项202
    9.1.1创建私有和共享首选项203
    9.1.2搜索和读取首选项203
    9.1.3新增、修改和删除首选项204
    9.1.4使用Android文件系统查找首选项数据204
    9.2使用文件和目录205
    9.2.1探索Android应用程序目录206
    9.2.2在默认应用程序目录中创建和写入文件206
    9.2.3在默认应用程序目录中读取文件内容207
    9.2.4使用Android文件系统操作其他目录和文件208
    9.3使用SQLite数据库存储结构化数据209
    9.3.1创建SQLite数据库210
    9.3.2创建、修改和删除数据库记录212
    9.3.3在SQLite数据库中执行查询215
    9.3.4关闭和删除SQLite数据库220
    9.3.5设计持久数据库220
    9.3.6向应用程序界面绑定数据223
    9.4使用ContentProvider在应用程序间共享数据227
    9.4.1为访问图像调整ContentProvider227
    9.4.2探索Android的部分内建ContentProvider232
    9.4.3在ContentProvider中修改数据239
    9.5使用自定义ContentProvider扩展你的Android应用程序241
    9.5.1继承ContentProvider241
    9.5.2定义数据URI242
    9.5.3定义数据列242
    9.5.4实现query()、insert()、update()、delete()和getType()243
    9.5.5更新Manifest文件248
    9.6使用LiveFolder249
    小结251
    参考资料和更多信息252

    第10章使用Android网络API253
    10.1访问因特网(HTTP)253
    10.1.1从Web读取数据253
    10.1.2使用HttpURLConnection254
    10.1.3解析从网络获取的XML255
    10.1.4使用线程访问网络257
    10.1.5显示从网络资源获取的图像260
    10.1.6获取Android网络状态262
    10.2使用WebView浏览Web263
    小结265
    参考资料和更多信息266

    第11章使用位置服务(LBS)API267
    11.1使用全球定位服务(GPS)267
    11.1.1查找你的位置267
    11.1.2定位你的模拟器269
    11.2位置地理编码269
    11.3在地图上标注位置272
    11.3.1地图标注内容272
    11.3.2地图标注视图272
    11.3.3获得调试APIKey274
    11.3.4拖曳地图视图275
    11.3.5缩放地图视图276
    11.3.6标记点277
    11.4位置服务扩展应用281
    小结282
    参考资料和更多信息282

    第12章使用Android多媒体API283
    12.1操作静态图像283
    12.1.1使用摄像头捕捉静态图像283
    12.1.2分享图像287
    12.1.3将图像指定为墙纸288
    12.2使用视频289
    12.2.1录制视频289
    12.2.2播放视频290
    12.3使用音频291
    12.3.1录制音频291
    12.3.2播放音频293
    12.3.3共享音频294
    12.3.4使用铃音294
    小结295

    第13章使用Android电话API296
    13.1使用电话功能包296
    13.1.1为获取手机状态信息取得许可权限296
    13.1.2请求获取通话状态297
    13.1.3请求获取服务信息299
    13.1.4使用电话号码299
    13.2使用短消息300
    13.2.1获得发送和接收短消息的许可权限301
    13.2.2发送短消息301
    13.2.3接收短消息303
    13.3拨打电话305
    小结307
    参考资料和更多信息307

    第14章通过OpenGLES使用Android3D图形308
    14.1定义OpenGLES308
    14.2使用基于OpenGLES的Android3D应用程序309
    14.2.1创建SurfaceView309
    14.2.2启动OpenGLES线程311
    14.2.3初始化EGL312
    14.2.4初始化GL314
    14.2.5绘制315
    14.3绘制3D物体316
    14.3.1绘制顶点(vertices)316
    14.3.2为顶点着色317
    14.3.3绘制更多复杂物体318
    14.3.4照亮你的场景320
    14.3.5为对象赋予材质321
    14.4同Android视图和事件进行交互323
    14.4.1允许OpenGL线程向应用程序线程发送信息324
    14.4.2允许应用程序线程向OpenGL线程发送信息325
    14.5清理OpenGLES326
    14.6使用GLSurfaceView类327
    小结330
    参考资料和更多信息330

    第15章使用Android可选硬件API331
    15.1使用设备传感器331
    15.2使用Wi-Fi334
    15.3监视电池337
    小结339

    第五部分更多Android应用程序设计原则
    第16章使用通知342
    16.1使用状态栏发布通知342
    16.2让手机震动345
    16.3灯光闪烁346
    16.4发出声响347
    16.5自定义通知348
    小结350

    第17章使用服务351
    17.1创建服务351
    17.2控制服务355
    17.3实现远程接口356
    17.4实现可包装(parcelable)类358
    小结360

    第六部分对外发布你的Android应用程序
    第18章移动软件开发过程364
    18.1移动开发过程概览364
    18.2选择一种软件开发方法364
    18.2.1理解“瀑布模型”的危险365
    18.2.2认识迭代式开发的价值365
    18.3整合应用程序需求366
    18.3.1确定工程需求366
    18.3.2为移动应用程序开发用例367
    18.3.3吸纳第三方需求367
    18.3.4管理手机设备数据库368
    18.4项目风险评估370
    18.4.1确定目标手机370
    18.4.2获取目标手机371
    18.4.3确定应用程序需求的可行性372
    18.4.4理解质量保障的风险372
    18.5编写基本项目文档373
    18.5.1为质量保障制定测试计划374
    18.5.2提供第三方所需的文档374
    18.5.3提供维护和移植所需的文档374
    18.6实现移动应用程序配置管理系统374
    18.6.1选择一个源代码控制系统374
    18.6.2实现一个可用的版本管理系统375
    18.7设计移动应用程序375
    18.7.1认识移动设备的局限375
    18.7.2移动应用程序体系结构探索376
    18.7.3可扩展和维护设计376
    18.7.4应用程序交互设计377
    18.8开发移动应用程序377
    18.9测试移动应用程序378
    18.10发布移动应用程序378
    18.10.1确定目标市场379
    18.10.2将市场需求引入应用程序需求379
    18.11支持和维护移动应用程序379
    18.11.1维护适当的应用程序文档379
    18.11.2管理服务器的动态更改379
    18.11.3确定低风险移植机会380
    小结380
    参考资料和更多信息380

    第19章开发和测试“防弹”Android应用程序381
    19.1“防弹”移动应用程序设计最佳实践381
    19.1.1满足移动用户的需求382
    19.1.2为移动设备设计用户界面382
    19.1.3设计稳定、灵敏的移动应用程序384
    19.1.4设计安全的移动应用程序385
    19.1.5在设计移动应用程序时考虑利益的最大化385
    19.1.6在Android应用程序设计时使用第三方标准386
    19.1.7设计便于维护和升级的移动应用程序386
    19.1.8在应用程序设计中使用Andriod工具388
    19.1.9避免设计时的愚蠢错误388
    19.2“防弹”移动应用程序开发最佳实践388
    19.2.1设计有效的移动开发过程389
    19.2.2提早和经常地测试应用程序可行性389
    19.2.3使用代码标准、代码检查和单元测试以提高代码质量389
    19.2.4处理某单一手机的缺陷391
    19.2.5在应用程序开发中使用Android工具392
    19.2.6避免开发时的愚蠢错误392
    19.3移动应用程序测试最佳实践392
    19.3.1设计一个应用程序漏洞跟踪系统392
    19.3.2管理测试环境393
    19.4确定设备的“洁净”初始状态394
    19.4.1模仿现实世界的活动395
    19.4.2尽量全面地进行测试395
    19.4.3在应用程序测试中使用Android工具400
    19.4.4避免测试时的愚蠢错误401
    19.4.5外包测试的责任401
    小结401
    参考资料和更多信息401

    第20章销售你的Android应用程序402
    20.1为发布而打包你的应用程序402
    20.1.1准备封装你的代码402
    20.1.2准备你的软件包403
    20.1.3测试软件包的发布版本406
    20.1.4认证你的Android应用程序406
    20.2赚钱406
    20.2.1在AndroidMarket上销售你的应用程序406
    20.2.2在自己的服务器上销售你的应用程序411
    20.2.3销售应用程序的其他途径412
    20.2.4保护你的知识产权413
    20.2.5让用户付费413
    小结414
    参考资料和更多信息414

    第七部分附录
    附录AAndroid模拟器快速入门416
    A.1玩转默认模拟器416
    A.2使用Android虚拟设备管理模拟器配置418
    A.3列表显示Android目标操作系统418
    A.3.1创建AVD419
    A.3.2列表显示所有已知的AVD424
    A.3.3删除AVD424
    A.3.4使用其他的AVD命令425
    A.4使用启动选项控制模拟器行为425
    A.4.1以命令行的方式配置模拟器启动选项426
    A.4.2使用Eclipse配置模拟器启动选项426
    A.5配置模拟器的位置信息427
    A.6在两个模拟器实例之间拨打电话427
    A.7在两个模拟器实例之间发送消息429
    A.8通过控制台与模拟器交互429
    A.8.1使用控制台模拟来电429
    A.8.2使用控制台模拟短消息429
    A.8.3使用控制台发送GPS坐标430
    A.8.4使用控制台监视网络状态431
    A.8.5使用控制台操作电源设置431
    A.8.6使用其他控制台命令432
    A.9享受模拟器432
    A.10认识模拟器的局限433

    附录BAndroidDDMS快速入门434
    B.1独立或结合Eclipse使用DDMS434
    B.2熟悉DDMS的关键特性436
    B.3使用进程436
    B.3.1向Android应用程序关联调试器437
    B.3.2监视Android应用程序的线程活动437
    B.3.3在Android应用程序中触发垃圾回收(GC)438
    B.3.4监视Android应用程序的堆活动438
    B.3.5终止Android进程438
    B.4使用文件浏览器439
    B.4.1从模拟器或设备上拷贝文件440
    B.4.2向模拟器或设备拷贝文件440
    B.4.3删除模拟器或设备上的文件440
    B.5使用模拟器控制441
    B.5.1模拟语音来电441
    B.5.2模拟短消息接收441
    B.5.3发送位置坐标442
    B.6使用应用程序日志442
    B.7在模拟器或目标设备上截屏443

    附录CAndroid调试桥快速入门445
    C.1列表显示连接到计算机的设备和模拟器445
    C.2针对特定设备使用ADB命令446
    C.3启动和停止ADB服务进程446
    C.3.1停止ADB服务进程446
    C.3.2启动和检测ADB服务进程446
    C.4使用ADB从/向Android应用程序拷贝文件446
    C.4.1向设备发送文件447
    C.4.2从设备提取文件447
    C.5使用ADB安装和卸载Android应用程序447
    C.5.1使用ADB安装应用程序447
    C.5.2使用ADB重装应用程序448
    C.5.3使用ADB卸载应用程序448
    C.6使用LogCat记录日志448
    C.6.1显示所有的日志信息448
    C.6.2更改日志记录模式以包含日期和时间信息449
    C.6.3过滤日志信息449
    C.6.4清除日志450
    C.6.5将日志输出重定向至一个文件450
    C.6.6访问次级日志450
    C.7生成Bug报告451
    C.8发布Shell命令451
    C.8.1发布单条Shell命令451
    C.8.2启动和使用一个Shell会话451
    C.8.3使用ADBShell启动和终止模拟器452
    C.8.4使用ADBShell查看SQLite数据库452
    C.8.5在ADBShell中使用Monkey进行应用程序压力测试452
    C.8.6通过Shell安装和使用自定义二进制文件455
    C.9其他ADB命令探索456

    附录DSQLite快速入门457
    D.1探索SQLite的常见任务457
    D.2使用sqlite3命令行接口457
    D.2.1启动sqlite3命令行接口并连接数据库458
    D.2.2探索你的数据库458
    D.2.3导入和导出数据库460
    D.2.4在命令行中执行SQL命令461
    D.2.5窥视SQLite内部462
    D.2.6使用其他的sqlite3命令462
    D.2.7认识SQLite的局限462
    D.3通过实例理解SQLite:学生成绩数据库463
    D.3.1设计学生成绩数据库的模式463
    D.3.2结合AUTOINCREMENT创建简单表464
    D.3.3向表中插入数据464
    D.3.4使用SELECT查询表数据465
    D.3.5创建具有外键和复合主键的表466
    D.3.6修改和更新表数据467
    D.3.7使用JOIN进行多表查询467
    D.3.8使用计算列468
    D.3.9对计算列使用子查询469
    D.3.10删除表470
查看详情
相关图书 / 更多
Android移动应用开发从入门到精通
Animate 2022二维动画制作案例教程(全视频微课版)
董佳佳、程远、金洪宇
Android移动应用开发从入门到精通
Android性能优化入门与实战
张世欣(拭心)
Android移动应用开发从入门到精通
Android图形显示系统
李先儒
Android移动应用开发从入门到精通
Animate CC 动画制作案例教程(第2版)
刘鹏程
Android移动应用开发从入门到精通
Android积木式编程开发:AppInventor2018离线中文版(第2版)
刘载兴、张燕燕 编
Android移动应用开发从入门到精通
Anisha Accidental Detective
Serena Patel 著;Emma McCann 绘
Android移动应用开发从入门到精通
Android自动化测试实战:Python+Appium +unittest
Storm 梁培峰
Android移动应用开发从入门到精通
AnEssayonthePrincipleofPopulationandOthe
Malthus, Thomas
Android移动应用开发从入门到精通
Android移动应用基础教程(Android Studio)(第3版)
黑马程序员
Android移动应用开发从入门到精通
Ansys Workbench 2022中文版有限元分析从入门到精通
CAD/CAM/CAE技术联盟
Android移动应用开发从入门到精通
Animate 2022中文版入门与提高
胡仁喜、王昌盛、李华
Android移动应用开发从入门到精通
Ansys Fluent中文版流场分析从入门到精通
曾建邦 单丰武
您可能感兴趣 / 更多
Android移动应用开发从入门到精通
归属感:如何通过社群获得商业竞争优势
[美]大卫·斯平克斯(David Spinks) 著;颉腾文化 出品
Android移动应用开发从入门到精通
《世界上最大的肚子》2024百班千人暑期书目学前中班名师推荐全新正版现货速发
[美]雷米·查利普(美)柏顿·萨普瑞
Android移动应用开发从入门到精通
经济学通义
[美]阿门·A.阿尔钦 (美)威廉·R.艾伦 著;[美]杰里·L.乔丹 编
Android移动应用开发从入门到精通
数字化领导力 数字化转型锦囊,领导力精进指南 一本书掌握数字化转型领导力之道
[美]艾萨克·萨科里克 著;王磊 译;颉腾文化 出品;邓斌
Android移动应用开发从入门到精通
法哲学基本原理
[美]马克·C.墨菲
Android移动应用开发从入门到精通
雪花的故事(用照片展示雪花的秘密,为你揭开冬日奇景的奥秘)
[美]马克·卡西诺[美]乔恩·尼尔森
Android移动应用开发从入门到精通
杜甫传
[美]弗洛伦斯.艾思柯
Android移动应用开发从入门到精通
神奇的数字零:从数字0开始的极简数学史和人类发展史
[美]查尔斯·塞弗(Charles Seife)著 杨杨立汝 译
Android移动应用开发从入门到精通
美利坚在燃烧:20世纪60年代以来的警察暴力与黑人反抗
[美]伊丽莎白·欣顿 著 胡位钧 译
Android移动应用开发从入门到精通
温柔亲启
[美]艾米莉·狄金森 著;[美]艾伦·路易斯·哈特、[美]玛莎·内尔·史密斯 编
Android移动应用开发从入门到精通
儒教中国及其现代命运(三部曲)
[美]列文森 作者;[中]季剑青 译者
Android移动应用开发从入门到精通
逃家小兔成长绘本系列
[美]玛格丽特.怀兹.布朗