Android 2高级编程

Android 2高级编程 pdf epub mobi txt 电子书 下载 2026

出版者:清华大学出版社
作者:[美] 梅尔
出品人:
页数:509
译者:王超
出版时间:2010-12
价格:68.00元
装帧:
isbn号码:9787302241027
丛书系列:
图书标签:
  • Android
  • 计算机
  • 编程语言
  • 编程
  • 工作以来读过的书
  • programming
  • SW-Platform/Framework/Architect
  • SW
  • Android
  • Android开发
  • 高级编程
  • 移动开发
  • Java
  • Kotlin
  • Android框架
  • 性能优化
  • 源码分析
  • UI设计
想要找书就要到 本本书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

《Android 2高级编程(第2版)》述如何有效利用android 2的功能来改进当前产品或创建新产品。《Android 2高级编程(第2版)》是使用android编写移动应用程序的实用精品指南,穿插了一系列示例项目来深入分析android的新功能和技术。大量示例和说明可引导您熟练掌握基础知识,使您不仅能使用当前android 功能编写赏心悦目的移动应用程序,还能灵活快捷地运用未来的android增强功能构建最前沿的解决方案。

点击链接进入英文版:

Professional Android 2 Application Development

点击链接进入新版:

Android 4 高级编程(第3版)

作者简介

RetocMeier出生于西澳大利州的珀斯市,现居伦敦.

他目前是Google的一名Android开发人员倡导者,帮助Android开发人员创建最优秀的应用程序.Reto是一位经验丰富的软件开发人员,拥有逾10年的GUI应用程序开发经验.进入Google之前,他曾从事过海洋石油和天然气开发以及金融工作.

Reto始终不渝地追求掌握新技术,从2007年Android发布之初Reto就迷恋上了此项技术.他经常利用业余时间研究多种开发平台以及Google的各种开发工具.

有关Reto的详细信息清防问他的个人网站RadioactivecYak,网址是http://blog.radioactiveyak.com也可以在twitter上关注他,网址为http://www.twitter.com/retomeier

目录信息

第1章 android简介 1
1.1 一些背景信息 2
1.1.1 不远的过去 2
1.1.2 未来的前景 3
1.2 对android的误解 3
1.3 开放的移动开发平台 4
1.4 自带的android应用程序 4
1.5 android sdk的特征 5
1.5.1 访问硬件(包括摄像头、gps和加速计) 6
1.5.2 自带的google地图、地理编码和基于位置的服务 6
1.5.3 后台服务 6
1.5.4 sqlite 数据存储和检索数据库 7
1.5.5 共享数据和应用程序间通信 7
1.5.6 使用小组件、live folder和live wallpaper增强主屏幕 7
1.5.7 广泛的媒体支持和2d/3d图形 8
1.5.8 优化的内存和进程管理 8
1.6 开放手机联盟简介 8
1.7 运行android的环境 8
1.8 从事移动开发的原因 9
1.9 从事android开发的原因 9
.1.9.1 推动android普及的因素 10
1.9.2 android的独到之处 10
1.9.3 改变移动开发格局 11
1.10 开发框架简介 11
1.10.1 开发包中的资源 12
1.10.2 理解android软件栈 12
1.10.3 dalvik虚拟机 14
1.10.4 android应用程序架构 14
1.10.5 android库 15
1.11 小结 15
第2章 开始入手 17
2.1 android开发 18
2.1.1 开始前的准备工作 18
2.1.2 创建第一个android应用程序 22
2.1.3 android应用程序的类型 27
2.2 面向移动设备的开发 29
2.2.1 硬件限制带来的设计考虑事项 29
2.2.2 考虑用户环境 32
2.2.3 android开发 33
2.3 to-do list示例 36
2.4 android开发工具 40
2.4.1 android虚拟设备和sdk管理器 41
2.4.2 android模拟器 42
2.4.3 dalvik调试监控服务(ddms) 43
2.4.4 android调试桥(adb) 43
2.5 小结 44
第3章 创建应用程序和活动 45
3.1 android应用程序的组成部分 46
3.2 应用程序清单简介 47
3.3 使用清单编辑器 52
3.4 android应用程序生命周期 53
3.5 理解应用程序的优先级和进程状态 54
3.6 分离资源 55
3.6.1 创建资源 55
3.6.2 使用资源 62
3.6.3 to-do list资源示例 65
3.6.4 为不同的语言和硬件创建资源 66
3.6.5 运行时配置更改 67
3.7 application类简介 69
3.7.1 扩展和使用application类 69
3.7.2 重写应用程序的生命周期事件 70
3.8 深入探讨android活动 71
3.8.1 创建一个活动 71
3.8.2 活动生命周期 73
3.8.3 android活动类 78
3.9 小结 78
第4章 创建用户界面 79
4.1 android ui基本设计 80
4.2 视图简介 80
4.2.1 使用视图创建活动的用户界面 81
4.2.2 android widget工具箱 82
4.3 布局简介 83
4.3.1 使用布局 83
4.3.2 优化布局 85
4.4 创建新视图 85
4.4.1 修改现有的视图 86
4.4.2 创建复合控件 90
4.4.3 创建定制的视图 93
4.4.4 使用定制的控件 103
4.5 drawable资源 104
4.5.1 形状、颜色和渐变 104
4.5.2 复合drawable 107
4.5.3 ninepatch drawable 110
4.6 分辨率和像素密度无关性 110
4.6.1 资源框架和分辨率无关性 111
4.6.2 分辨率无关性的最佳实践 112
4.6.3 反复测试 114
4.7 创建和使用菜单 115
4.7.1 android菜单系统简介 115
4.7.2 定义活动的菜单 117
4.7.3 菜单项选项 118
4.7.4 动态更新菜单项 119
4.7.5 处理菜单选择 120
4.7.6 子菜单和上下文菜单 120
4.7.7 使用xml定义菜单 122
4.7.8 to-do list示例续 123
4.8 小结 128
第5章 意图、广播接收器、adapter和internet 131
5.1 意图简介 132
5.1.1 使用意图来启动活动 132
5.1.2 使用意图过滤器来为隐式意图提供服务 138
5.1.3 使用意图过滤器作为插件和扩展 146
5.1.4 linkify简介 148
5.1.5 使用意图来广播事件 151
5.2 待处理意图简介 155
5.3 adapter简介 156
5.2.1 部分本地adapter简介 156
5.2.2 定制arrayadapter 156
5.2.3 使用adapter绑定数据 157
5.4 使用internet资源 162
5.4.1 连接到internet资源 163
5.4.2 使用internet资源 164
5.5 对话框简介 164
5.5.1 dialog类简介 164
5.5.2 将活动用作对话框 166
5.5.3 管理和显示对话框 167
5.6 创建一个地震查看器 168
5.7 小结 176
第6章 文件、保存状态和首选项 179
6.1 保存简单的应用程序数据 180
6.2 创建并保存首选项 180
6.3 检索共享首选项 181
6.4 为地震查看器创建一个设置活动 181
6.5 首选项活动和首选项框架概述 189
6.5.1 在xml中定义一个首选项屏幕布局 190
6.5.2 首选项活动简介 192
6.5.3 查找并使用首选项屏幕共享首选项 193
6.5.4 共享首选项变更监听程序简介 193
6.6 为地震查看器创建一个标准的首选项活动 194
6.7 保存活动状态 195
6.7.1 保存并还原实例状态 195
6.7.2 保存to-do list活动状态 196
6.8 保存和加载文件 198
6.9 将静态文件作为资源添加 199
6.10 文件管理工具 200
6.11 小结 200
第7章 数据库和内容提供器 201
7.1 android数据库简介 201
7.1.1 sqlite数据库简介 202
7.1.2 内容提供器简介 202
7.2 sqlite简介 202
7.3 游标和内容值 203
7.4 使用sqlite数据库 203
7.4.1 使用sqliteopenhelper 206
7.4.2 在不使用sqlitehelper的情况下打开和创建数据库 207
7.4.3 android数据库设计注意事项 207
7.4.4 查询数据库 207
7.4.5 从cursor中提取结果 208
7.4.6 添加、更新和删除行 209
7.4.7 保存to-do list 210
7.5 创建一个新的内容提供器 216
7.5.1 提供对数据源的访问 217
7.5.2 注册提供器 219
7.6 使用内容提供器 219
7.6.1 内容解析器简介 219
7.6.2 查询内容 219
7.6.3 添加、更新和删除内容 220
7.6.4 在内容提供器中访问文件 221
7.7 创建和使用地震内容提供器 222
7.7.1 创建内容提供器 222
7.7.2 使用提供器 227
7.8 本地android内容提供器 229
7.8.1 使用媒体库提供器 230
7.8.2 使用联系人提供器 231
7.9 小结 235
第8章 地图、地理编码和基于位置的服务 237
8.1 使用基于位置的服务 238
8.2 配置模拟器来测试基于位置的服务 238
8.3 更新模拟位置提供器中的位置 238
8.4 选择一个位置提供器 239
8.4.1 查找可用的提供器 239
8.4.2 根据标准查找位置提供器 240
8.5 确定自己所在的位置 241
8.5.1 “where am i”示例 241
8.5.2 追踪移动 244
8.5.3 更新“where am i”示例中的位置 245
8.6 使用邻近提醒 247
8.7 使用地理编码器 248
8.7.1 反向地理编码 249
8.7.2 前向地理编码 249
8.7.3 对“where am i”示例进行地理编码 251
8.8 创建基于地图的活动 252
8.8.1 mapview和mapactivity简介 252
8.8.2 获得地图的api键 253
8.8.3 创建一个基于地图的活动 254
8.8.4 配置和使用mapview 255
8.8.5 使用mapcontroller 256
8.8.6 对“where am i”示例使用地图 256
8.8.7 创建和使用覆盖(overlay) 260
8.8.8 mylocationoverlay简介 267
8.8.9 itemizedoverlay和overlayitem简介 267
8.8.10 将视图固定到地图和地图的某个位置上 269
8.9 对earthquake示例添加地图功能 271
8.10 小结 276
第9章 后台工作 277
9.1 服务简介 278
9.1.1 创建和控制服务 279
9.1.2 将活动和服务绑定 289
9.1.3 后台服务的优先级 291
9.2 使用后台线程 292
9.2.1 使用asynctask运行异步任务 292
9.2.2 使用asynctask将earthquake service移动到后台线程 294
9.2.3 手动创建线程和gui线程同步 295
9.3 创建一个toast 297
9.3.1 定制toast 297
9.3.2 在工作线程中使用toast 299
9.4 通知简介 299
9.4.1 通知管理器简介 300
9.4.2 创建通知 300
9.4.3 触发通知 304
9.4.4 向地震监控器中添加通知 304
9.4.5 高级通知技术 307
9.4.6 持续的和连续的通知 310
9.5 使用警报 310
9.5.1 设置重复警报 312
9.5.2 使用重复警报更新earthquake 313
9.6 小结 315
第10章 个性化手机屏幕 317
10.1 主屏幕小组件简介 318
10.2 创建app widgets 318
10.2.1 创建小组件布局 319
10.2.2 定义小组件设置 321
10.2.3 创建小组件意图接收器并将其添加到应用程序清单中 321
10.2.4 remote views(远程视图)和app widget manager简介 322
10.2.5 刷新小组件 327
10.2.6 创建并使用小组件配置活动 329
10.3 创建地震小组件 330
10.4 live folder简介 335
10.4.1 创建live folder 336
10.4.2 创建earthquake live folder 338
10.5 将搜索添加到应用程序以及快速搜索框中 340
10.5.1 将搜索添加到应用程序中 341
10.5.2 在快速搜索框中显示搜索结果 344
10.5.3 将搜索添加到earthquake示例中 344
10.6 创建live wallpaper 348
10.6.1 创建live wallpaper定义资源 348
10.6.2 创建wallpaper服务 348
10.6.3 创建wallpaper服务引擎 349
10.7 小结 350
第11章 音频、视频以及摄像头的使用 351
11.1 播放音频和视频 352
11.1.1 media player简介 352
11.1.2 准备音频播放 353
11.1.3 准备视频播放 354
11.1.4 控制播放 357
11.1.5 管理媒体播放输出 358
11.2 录制音频和视频 358
11.2.1 使用意图录制视频 358
11.2.2 使用媒体刻录机 359
11.3 使用摄像头并拍摄照片 362
11.3.1 使用意图拍摄照片 362
11.3.2 控制摄像头并拍摄照片 364
11.3.3 读取并写入jpeg exif图像详细信息 368
11.4 向媒体库中添加新媒体 369
11.4.1 使用媒体扫描仪 369
11.4.2 向媒体库中插入媒体 370
11.5 原始音频操作 370
11.5.1 录制带有音频记录的声音 370
11.5.2 使用音频轨道播放声音 372
11.6 语音识别 373
11.7 小结 374
第12章 电话服务和sms 377
12.1 电话服务 378
12.1.1 启动拨号程序以初始化电话呼叫 378
12.1.2 替换本机拨号程序 378
12.1.3 访问电话和网络属性以及状态 379
12.1.4 监视电话状态、电话活动以及数据连接中的变化 382
12.2 sms和mms简介 386
12.2.1 在应用程序中使用sms和mms 386
12.2.2 使用意图和本机客户端从应用程序中发送sms和mms 387
12.2.3 手动发送sms消息 388
12.2.4 监听传入的sms消息 391
12.2.5 紧急响应程序sms示例 393
12.2.6 自动化紧急响应程序 402
12.3 小结 410
第13章 蓝牙、网络和wi-fi 411
13.1 使用蓝牙 411
13.1.1 访问本地蓝牙设备适配器 412
13.1.2 管理蓝牙属性和状态 413
13.1.3 可发现性和远程设备发现 415
13.1.4 蓝牙通信 418
13.1.5 蓝牙数据传输示例 424
13.2 管理网络连接 433
13.2.1 connectivity manager(连接管理器)简介 433
13.2.2 读取用户首选项用于后台数据传输 434
13.2.3 监视网络详细信息 435
13.2.4 查找并配置网络首选项以及控制硬件信号 435
13.2.5 监视网络连接 436
13.3 管理wi-fi 436
13.3.1 监视wi-fi连接 437
13.3.2 监视活动连接详细信息 437
13.3.3 扫描热点 438
13.3.4 管理wi-fi配置 438
13.3.5 创建wi-fi网络配置 439
13.4 小结 439
第14章 传感器 441
14.1 使用传感器和传感器管理器 442
14.2 解释传感器数值 445
14.3 使用指南针、加速计和方向传感器 445
14.3.1 加速计简介 446
14.3.2 检测加速度变化 447
14.3.3 创建一个g-forceometer(重力测力计) 448
14.3.4 确定设备方向 451
14.3.5 创建一个指南针和人工地平仪 454
14.4 控制设备振动 458
14.5 小结 459
第15章 android高级开发 461
15.1 android的安全性 462
15.1.1 linux内核安全 462
15.1.2 权限简介 462
15.1.3 声明和实施权限 463
15.1.4 为广播意图实施权限 464
15.2 使用wake lock 464
15.3 android text to speech简介 465
15.4 使用aidl来支持服务的ipc 467
15.4.1 实现aidl接口 467
15.4.2 将类对象作为parcelable传递 468
15.4.3 实现和提供ipc接口 470
15.5 使用internet服务 472
15.6 构建内容丰富的用户界面 473
15.6.1 使用动画 473
15.6.2 高级画布绘图 484
15.6.3 surfaceview简介 499
15.6.4 创建交互式控件 502
15.7 小结 508
· · · · · · (收起)

读后感

评分

初学Android就看了这本书,看完算是整体了解了Android应用程序的系统结构和执行原理,但是从出版社网站上down下来的代码有很多问题,最基本的一个所有工程的最低API级别都是1。不知道国内怎么翻译的,感觉不管啥书一经清华大学出版社的手质量就哗哗下降  

评分

对移动开发人员来说,现在是一个令人心潮澎湃的时代。手机从来没有像今天这样流行,强大的智能手机产品已经为消费者所普遍接受,而且Android 生态系统已经扩展到了平板电脑和电视设备,进一步增加了您的Android 应用程序的受众。 现在,外观时尚且用途广泛的手机带有GPS、加速...  

评分

很不错的android书,比较全面,但是代码有不少小毛病,可能是翻译过程中的问题。 p33 嵌入式和移动式设备的限制使得开发人员失去了摩尔定律的优势。 p174 细节错误还挺多 涉及了很多方面,但详略有点不均衡。 p355 对话框是系统级的,不能轻易使用。 p700 注重质量而非功能。 举报  

评分

翻了这么长时间才出来大作,居然让我这个新手挑出不少的错误,着实让人不爽,建议对照英文原版一起看,大家一起来挑错,让以后的译本更加完美。

评分

市面上的很多书籍都是developer.android.com上guide的简单翻译,例子照抄android sdk中的sample,而且翻译质量还不怎么样,读这些书不如直接去官网上看guide。 本书基本覆盖了android app开发的方方面面,把android程序开发的重要组件都讲明白了,不像某些国内作者的书,看完了...  

用户评价

评分

**第一段评价:** 这本书简直是为那些已经对Android基础知识了如指掌,渴望迈向“专家级”开发的工程师量身定做的宝典!我花了一周时间通读了关于后台服务与进程间通信(IPC)的章节,收获之大令人难以置信。作者没有停留在那些教科书式的API罗列,而是深入剖析了Binder机制的底层设计哲学,结合实际场景演示了如何在复杂的分布式应用中实现高效、健壮的数据同步和任务调度。特别是关于AIDL在多进程架构中处理复杂数据结构序列化的那一节,清晰地梳理了数据流的生命周期和潜在的性能瓶颈,甚至给出了通过自定义Parcelable优化传输效率的实战建议。对于我目前正在负责的一个需要跨App组件协同工作的项目来说,这本书提供的不仅仅是知识点,更是解决实际工程难题的思维框架。它迫使你思考“为什么”要这么设计,而不是仅仅停留在“怎么做”的层面,这种深度在市面上的多数“进阶”读物中是极为罕见的。

评分

**第五段评价:** 这本书的后半部分,关于系统级服务和安全模型的讲解,让我感觉自己仿佛在阅读一本“Android安全渗透与防御指南”。在当前移动安全日益重要的背景下,掌握这些细节是保护用户数据和应用自身不被滥用的基石。作者对Intent的解析、四大组件的启动权限控制,以及Content Provider的暴露风险进行了极具穿透力的分析。我特别关注了关于应用沙箱机制和SELinux策略的章节,它清晰地解释了为什么某些操作需要特定的系统权限,以及如何在自定义的系统服务中安全地暴露API。对于开发需要处理敏感数据或与系统底层交互的应用来说,这本书提供的安全防御知识是极其宝贵的“反面教材”——它教会你如何预判攻击者的路径,并提前布下防御网。读完这些内容,我不再仅仅把安全看作是一个合规性的要求,而是内嵌于每一个代码决策中的基本原则。

评分

**第二段评价:** 初翻这本书时,我对它在图形渲染和自定义View绘制方面的论述抱有极高的期待,毕竟在现在的App生态中,流畅的UI和独特的视觉效果是留住用户的关键。坦白说,这部分内容展现了作者深厚的底层功力。它没有仅仅讲解`onDraw()`里如何调用Canvas方法,而是详尽解释了Android图形栈的工作原理,包括Choreographer如何同步渲染帧率,以及SurfaceFlinger是如何将各个应用的渲染缓冲区合成为最终屏幕显示的。我特别欣赏作者对“过度绘制”(Overdraw)问题的分析,他不仅指出了如何用工具检测,更重要的是,提供了从布局优化到硬件加速层面解决问题的系统性策略,而不是简单的“隐藏不必要的背景”。读完这部分,我回去重构了我应用中那个号称“性能怪兽”的列表页,通过禁用不必要的硬件层合并和简化阴影绘制,帧率提升了惊人的20%以上。这本书的价值就在于,它将抽象的性能指标转化为了具体的、可操作的代码优化步骤。

评分

**第四段评价:** 我对技术书籍的偏好是实用至上,这本书在“架构演进与模块化”这一块的处理方式,完全符合我的“工程师”口味。它没有鼓吹任何单一的框架,而是站在一个更高的维度,对比分析了不同模块化实践的优缺点——从早期的“巨石应用”到如今流行的动态特性模块(Dynamic Feature Modules)的引入。作者对依赖注入(DI)框架的深入探讨尤其到位,他不仅展示了Dagger/Hilt的使用,更重要的是,他剖析了DI在构建可测试性高、耦合度低的模块化架构中扮演的核心角色。通过书中展示的,如何设计一套清晰的Module-App层级的契约接口,我得以重新审视我们团队那个日渐臃肿的主App结构。这本书提供的不是一套现成的模板,而是一套可以应对未来需求变化的、富有弹性的架构设计哲学,其对构建大型、长期维护项目的指导意义是无可估量的。

评分

**第三段评价:** 作为一名多年接触过嵌入式和原生开发的程序员,我一直觉得Android的内存管理和垃圾回收机制是个“黑箱”。然而,这本书对内存模型的深入剖析彻底颠覆了我的认知。它详细阐述了Dalvik/ART虚拟机中对象分配的策略、JNI层与Java堆之间的交互边界,以及更关键的——如何有效地避免内存泄漏和降低GC暂停时间。作者并未仅仅停留在“使用Lint工具检查泄漏”的层面,而是通过模拟内存抖动场景,展示了Heap Dump文件的阅读技巧,教你如何精准定位到那些“被遗忘的引用链”。我尤其喜欢书中关于内存映射文件(Mmap)在加载大型资源(如图集或数据库)时的应用范例,这对于开发资源密集型应用(如游戏或专业工具)至关重要。这本书不再是教你如何“使用”Android,而是教你如何“驯服”它底层的资源调度,将系统性能控制权牢牢掌握在自己手中,这对于构建真正可靠的企业级应用是不可或缺的。

评分

实用示例

评分

实用示例

评分

实用示例

评分

实用示例

评分

实用示例

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 onlinetoolsland.com All Rights Reserved. 本本书屋 版权所有