Android编程权威指南(第2版)

Android编程权威指南(第2版) pdf epub mobi txt 电子书 下载 2026

出版者:人民邮电出版社
作者:Bill Phillips
出品人:
页数:568
译者:王明发
出版时间:2016-5
价格:109.00 元
装帧:平装
isbn号码:9787115422460
丛书系列:The Big Nerd Ranch Guide
图书标签:
  • Android
  • 编程
  • 软件开发
  • 计算机
  • Java
  • 移动开发
  • 互联网
  • 图灵
  • Android
  • 编程
  • 权威
  • 指南
  • 第2版
  • 移动开发
  • Java
  • 软件工程
  • 用户体验
  • 开发入门
想要找书就要到 本本书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

Big Nerd Ranch是美国一家专业的移动开发技术培训机构。本书主要以其Android训练营教学课程为基础,融合了几位作者多年的心得体会,是一本完全面向实战的Android编程权威指南。全书共34章,详细介绍了8个Android 应用。通过这些精心设计的应用,读者可掌握很多重要的理论知识和开发技巧,获得最前沿的开发经验。

如果你熟悉Java语言,或者了解面向对象编程,那就立刻开始Android编程之旅吧!

作者简介

王明发:毕业于华东理工大学。软件开发及项目管理者,拥有近十年的软件开发及项目管理经验;译者,另译有《写给大家看的项目管理书(第3版)》。

目录信息

第1章  Android开发初体验
1.1 应用开发基础
1.2 创建Android项目
1.3 Android Studio使用导航
1.4 用户界面设计
1.4.1 视图层级结构
1.4.2 组件属性
1.4.3 创建字符串资源
1.4.4 预览界面布局
1.5 从布局XML到视图对象
1.6 组件的实际应用
1.6.1 引用组件
1.6.2 设置监听器
1.7 创建提示消息
1.8 使用模拟器运行应用
1.9 深入学习:Android编译过程
第2章  Android与MVC设计模式
2.1  创建新类
2.2  Android与MVC设计模式
2.3  更新视图层
2.4  更新控制层
2.5  在设备上运行应用
2.6  添加图标资源
2.7  关于挑战练习
2.8  挑战练习:为TextView添加监听器
2.9  挑战练习:添加后退按钮
2.10  挑战练习:从按钮到图标按钮
第3章  Activity的生命周期
3.1  日志跟踪理解Activity生命周期
3.2  设备旋转与Activity生命周期
3.3  设备旋转前保存数据
3.4  再探Activity生命周期
3.5  深入学习:测试onSaveInstance-State(Bundle)方法
3.6  深入学习:日志记录的级别与方法
第4章  Android应用的调试
4.1  异常与栈跟踪
4.2  Android特有的调试工具
第5章  第二个activity
5.1  创建第二个activity
5.2  启动activity
5.3  activity间的数据传递
5.4  activity的使用与管理
5.5  挑战练习
第6章  Android SDK版本与兼容
6.1  Android SDK版本
6.2  Android编程与兼容性问题
6.3  使用Android开发者文档
6.4  挑战练习:报告编译版本
第7章  UI fragment与fragment管理器
7.1  UI设计的灵活性需求
7.2  fragment的引入
7.3  着手开发CriminalIntent
7.4  托管UI fragment
7.5  创建UI fragment
7.6  添加UI fragment到Fragment-Manager
7.7  采用fragment的应用架构
7.8  深入学习:为什么应优先使用支持库版fragment
7.9  深入学习:使用操作系统内置版fragment
第8章  使用布局与组件创建用户界面
8.1  升级Crime类
8.2  更新布局
8.3  生成并使用组件
8.4  深入探讨XML布局属性
8.5  使用图形布局工具
8.6  挑战练习:日期格式化
第9章  使用RecyclerView显示列表
9.1  升级CriminalIntent应用的模型层
9.2  使用抽象activity托管fragment
9.3  RecyclerView、Adapter和ViewHolder
9.4  定制列表项
9.5  响应点击
9.6  深入学习:ListView和GridView
9.7  深入学习:单例
第10章  使用fragment argument
10.1  从fragment中启动activity
10.2  fragment argument
10.3  刷新显示列表项
10.4  通过fragment获取返回结果
10.5  挑战练习:实现高效的RecyclerView刷新
10.6  深入学习:为何要用fragment argument
第11章  使用ViewPager
11.1  创建CrimePagerActivity
11.2  FragmentStatePagerAdapter与FragmentPagerAdapter
11.3  深入学习:ViewPager的工作原理
11.4  深入学习:以代码的方式创建布局
第12章  对话框
12.1  使用AppCompat兼容库
12.2  创建DialogFragment
12.3  fragment间的数据传递
12.4  挑战练习:更多对话框
12.5  挑战练习:按设备类型展现DialogFragment
第13章  工具栏
13.1  AppCompat
13.2  工具栏菜单
13.3  实现层级式导航
13.4  可选菜单项
13.5  深入学习:工具栏与操作栏
13.6  挑战练习:删除crime记录
13.7  挑战练习:优化字符串资源显示
13.8  挑战练习:用于RecyclerView的空视图
第14章  SQLite数据库
14.1  定义Schema
14.2  创建初始数据库
14.3  修改CrimeLab类
14.4  写入数据库
14.5  读取数据库
14.6  深入学习:数据库高级主题介绍
14.7  深入学习:应用上下文
14.8  挑战练习:删除Crime记录
第15章  隐式intent
15.1  添加按钮组件
15.2  添加嫌疑人信息至模型层
15.3  使用格式化字符串
15.4  使用隐式intent
15.5  挑战练习:ShareCompat
15.6  挑战练习:又一个隐式intent
第16章  使用intent拍照
16.1  布置照片
16.2  外部存储
16.3  使用相机intent
16.4  缩放和显示位图
16.5  功能声明
16.6  深入学习:使用include标签
16.7  挑战练习:优化照片显示
16.8  挑战练习:优化缩略图加载
第17章  Master-Detail用户界面
17.1  增加布局灵活性
17.2  Activity:fragment的托管者
17.3  深入学习:设备屏幕尺寸的确定
第18章  Assets
18.1  为何使用assets
18.2  创建BeatBox应用
18.3  导入assets
18.4  处理assets
18.5  使用Assets
18.6  访问Assets
18.7  深入学习:什么是non-assets
第19章  使用SoundPool播放音频
19.1  创建SoundPool
19.2  加载音频文件
19.3  播放音频
19.4  释放音频
19.5  设备旋转和对象保存
19.6  深入学习:是否要保留
19.7  深入学习:设备旋转处理再探
第20章  样式与主题
20.1  颜色资源
20.2  样式
20.3  主题
20.4  添加主题颜色
20.5  覆盖主题属性
20.6  修改按钮属性
20.7  深入学习:样式继承拾遗
20.8  深入学习:引用主题属性
20.9  挑战练习:创建多版本主题
第21章  XML drawable
21.1  统一按钮样式
21.2  shape drawable
21.3  state list drawable
21.4  layer list drawable
21.5  深入学习:为什么要用XML drawable
21.6  深入学习:使用9-patch图像
21.7  深入学习:使用Mipmap图像
第22章  深入学习intent和任务
22.1  创建NerdLauncher项目
22.2  解析隐式intent
22.3  在运行时创建显式intent
22.4  任务与后退栈
22.5  使用NerdLauncher应用作为设备主屏幕
22.6  挑战练习:应用图标
22.7  深入学习:进程与任务
22.8  深入学习:并发文档
第23章  HTTP与后台任务
23.1  创建PhotoGallery应用
23.2  网络连接基本
23.3  使用AsyncTask在后台线程上运行代码
23.4  线程与主线程
23.5  从Flickr获取JSON数据
23.6  从AsyncTask回到主线程
23.7  清理AsyncTask
23.8  深入学习:AsyncTask再探
23.9  深入学习:AsyncTask的替代方案
23.10  挑战练习:Gson
23.11  挑战练习:分页
23.12  挑战练习:动态调整网格列
第24章  Looper、Handler和HandlerThread
24.1  配置RecyclerView以显示图片
24.2  批量下载缩略图
24.3  与主线程通信
24.4  创建并启动后台线程
24.5  Message与message handler
24.6  深入学习:AsyncTask与线程
24.7  挑战练习:预加载以及缓存
24.8  深入学习:解决图片下载问题
第25章  搜索
25.1  搜索Flickr网站
25.2  使用SearchView
25.3  使用shared preferences实现轻量级数据存储
25.4  优化应用
25.5  挑战练习:深度优化PhotoGallery应用
第26章  后台服务
26.1  创建IntentService
26.2  服务的作用
26.3  查找最新返回结果
26.4  使用AlarmManager延迟运行服务
26.5  控制定时器
26.6  通知信息
26.7  挑战练习:可穿戴设备上的通知
26.8  深入学习:服务细节内容
26.9  深入学习:JobScheduler和JobService
26.10  深入学习:Sync Adapter
26.11  挑战练习:在Lollipop设备上使用JobService
第27章  broadcast intent
27.1  一般intent和broadcast intent
27.2  接收系统broadcast:重启后唤醒
27.3  过滤前台通知消息
27.4  receiver与长时运行任务
27.5  深入学习:本地事件
27.6  深入学习:检测fragment的状态
第28章  网页浏览
28.1  最后一段Flickr数据
28.2  简单方式:隐式intent
28.3  较难方式:使用WebView
28.4  处理WebView的设备旋转问题
28.5  深入学习:注入JavaScript对象
28.6  深入学习:KitKat的WebView
28.7  挑战练习:使用后退键浏览历史网页
28.8  挑战练习:非HTTP链接支持
第29章  定制视图与触摸事件
29.1  创建DragAndDraw项目
29.2  创建定制视图
29.3  处理触摸事件
29.4  onDraw(...)方法内的图形绘制
29.5  挑战练习:设备旋转问题
29.6  挑战练习:旋转矩形框
第30章  属性动画
30.1  建立场景
30.2  简单属性动画
30.3  播放多个动画
30.4  深入学习:其他动画API
30.5  挑战练习
第31章  地理位置和Play服务
31.1  地理位置和定位类库
31.2  创建Locatr项目
31.3  Play服务和模拟器
31.4  创建Locatr应用
31.5  配置Google Play服务
31.6  使用Google Play服务
31.7  基于地理位置的Flickr搜索
31.8  获取定位数据
31.9  寻找并显示图片
31.10  挑战练习:进度指示器
第32章  使用地图
32.1  导入Play地图服务库
32.2  Android上的地图服务
32.3  地图API设置
32.4  创建地图
32.5  获取更多地理位置数据
32.6  使用地图
32.7  深入学习:团队开发和API key
第33章  material design
33.1  material surface
33.2  动画工具
33.3  新的视图组件
33.4  深入学习material design
第34章  编后语
34.1  终极挑战
34.2  关于我们
34.3  致谢
· · · · · · (收起)

读后感

评分

相比于国内那些从入门到精通,还有疯狂xxx,这本书讲得还是相当不错的。内容有基础,同时也不乏深入的点。入门可以有,但在稍微深入理解android系统,学会自己跟源码之后,还是再确认一遍书上的内容是否有误比较好。 目前只看了一节,在第三章的保存状态信息一节已知就有两个错...  

评分

相比于国内那些从入门到精通,还有疯狂xxx,这本书讲得还是相当不错的。内容有基础,同时也不乏深入的点。入门可以有,但在稍微深入理解android系统,学会自己跟源码之后,还是再确认一遍书上的内容是否有误比较好。 目前只看了一节,在第三章的保存状态信息一节已知就有两个错...  

评分

相比于国内那些从入门到精通,还有疯狂xxx,这本书讲得还是相当不错的。内容有基础,同时也不乏深入的点。入门可以有,但在稍微深入理解android系统,学会自己跟源码之后,还是再确认一遍书上的内容是否有误比较好。 目前只看了一节,在第三章的保存状态信息一节已知就有两个错...  

评分

本人是一名后端程序员,借公司新开Android项目的机会,打算学习一下Android APP开发。 随手一搜,Android的书有好多本,都说《第一行代码》好,可惜第二版还没出。于是就选了这本《Android编程权威指南》第二版,内容比较新。 本书每章或者每几章就讲述一个小项目,涵盖了Andr...  

评分

相比于国内那些从入门到精通,还有疯狂xxx,这本书讲得还是相当不错的。内容有基础,同时也不乏深入的点。入门可以有,但在稍微深入理解android系统,学会自己跟源码之后,还是再确认一遍书上的内容是否有误比较好。 目前只看了一节,在第三章的保存状态信息一节已知就有两个错...  

用户评价

评分

这本书在错误处理和异常捕获这一关键环节的处理上,暴露了作者极大的经验不足或是不负责任的态度。在涉及到底层系统调用失败、网络通信中断或者数据库操作异常的场景时,书中往往只给出了一个简单的 `try-catch` 块,然后草草了事,或者干脆就让应用直接崩溃,没有提供任何健壮的错误恢复机制或优雅降级的处理策略。这在生产环境中是绝对不可接受的,一个合格的“指南”必须教会读者如何应对现实世界中的不确定性。此外,书中关于安全性的讨论更是少得可怜,对于数据加密、权限管理在Android O/P 版本之后的变化,几乎是只字未提,这对于当前高度重视用户隐私和应用安全的开发环境来说,无疑是一个致命的缺陷。我甚至怀疑作者是不是很久没有接触过真实的线上项目了,因为很多在现实中被反复强调的“安全红线”,在这本书里竟然被完全忽略了。阅读这本书,我学到的更多是“代码能跑起来就行”,而不是“代码应该写得多安全、多可靠”。这种对质量的漠视,让我对整本书的“权威性”产生了深深的怀疑。

评分

这本书的讲解风格,怎么说呢,更像是一个资深工程师在跟几个完全不懂行的外行同事做技术汇报,那种居高临下的、略带炫技的笔调贯穿始终,完全没有体现出“指南”应有的耐心和引导性。对于初学者而言,很多重要的概念,比如内存管理、视图绘制流程的底层原理,作者只是轻描淡写地抛出了几个高深的术语,然后就直接跳到了一个复杂的应用实例的实现上,中间那座至关重要的“理解之桥”完全没有搭建起来。我花了整整一个周末的时间试图啃完关于性能优化的那几章,结果收获甚微,因为书中大量使用了缩写和内部代号,却没有提供一份清晰的术语表进行解释,阅读体验极其受挫。更让我感到失望的是,书中对于构建系统(Gradle)的讲解少得可怜,这在现代Android开发中简直是核心中的核心,大部分的篇幅却被分配给了那些已经被Google官方文档和教程完全取代的、过时的UI组件使用方法上。整个阅读过程,我感觉自己更像是在阅读一本厚厚的、充满陈词滥调的技术论文集,而不是一本能切实提升我编码能力的实战工具书。要不是为了凑齐一个学习资料的体系,我真想直接把它扔到一边,转投那些在线课程和社区博客去寻找更具时代感和教学温度的知识。

评分

翻阅这本书的索引和目录结构,我发现它对诸如测试、持续集成/持续部署(CI/CD)等现代软件工程流程中的关键环节的覆盖面极其薄弱。测试章节,寥寥数页,几乎没有涉及单元测试(JUnit/Mockito)和UI测试(Espresso)的深度实践,更别提如何构建一个覆盖率合格的测试体系了。对于一个声称是“权威指南”的著作来说,忽略了软件质量保证的基石部分,是极其不专业的表现。同时,关于应用发布、签名、ProGuard/R8混淆规则的配置,书中的描述也是停留在十年前的水平,无法指导读者应对当下Google Play对应用安全和体积优化日益严格的要求。读完这本书,我感觉我只是学会了如何堆砌功能模块,但完全不知道如何将这些模块封装成一个可维护、可测试、能快速迭代的专业级产品。它提供的是“如何实现功能”,而不是“如何构建一个专业的工程项目”。总而言之,这本书就像一座老旧的、缺乏现代化维护的博物馆,陈列着一些历史文物,但对于一个想要参与未来建设的工程师来说,它的指导价值微乎其微,我需要花更多精力去“考古”和“修正”它提供的信息,才能让它勉强适配当前的开发环境。

评分

这本书的排版简直是一场灾难,油墨似乎都印不匀,有些地方的字体细得跟蚊子腿一样,稍微有点光线不好的地方就得眯着眼才能勉强看清那些代码示例。说实话,我买的时候是冲着“权威指南”这四个字去的,结果呢,内容组织混乱得像个堆满杂物的阁楼,章节之间的逻辑跳跃得让人摸不着头脑。比如讲到四大组件的时候,本该是核心和基础的部分,作者却像是心不在焉地写着,很多关键的生命周期回调和Intent的深层用法都一带而过,没有深入的剖析,更别提那些在实际项目开发中经常遇到的疑难杂症的解决方案了。我翻到后面去查找关于Kotlin协程的最佳实践,结果发现那部分内容简直就是一本过时的教程,很多现代Android开发中的异步处理模式它压根就没提及,读完之后感觉自己像是穿越回了好几年前的开发环境,完全跟不上现在社区的主流步伐,对新手来说,这无疑是一个巨大的误导。而且,书里的错误和勘误也多到令人发指,光是我自己试着敲下来的代码里,就发现好几处地方的API调用参数或者返回值和现在最新的Android SDK版本对不上号,不得不花大量时间去Google和Stack Overflow上验证和修正,这完全违背了我购买一本“指南”的初衷——我希望获得的是可以直接采纳的、经过验证的知识体系,而不是一本需要我自行 debug 的参考手册。

评分

我记得我买这本书的时候,正好是Google刚刚大力推广Jetpack架构组件的那段时间,市场上有许多关于LiveData、ViewModel和Room的优秀书籍涌现。然而,这本“权威指南”对这些现代架构组件的介绍,简直就是敷衍了事到了令人发指的地步。它似乎还沉浸在Fragment加Activity的传统“屎山”架构中无法自拔,对响应式编程范式在Android上的应用几乎没有涉及。当我尝试跟着书中的示例代码搭建一个稍微复杂一点的数据流时,发现作者给出的解决方案依然停留在回调地狱的边缘,处理异步操作的方式陈旧得让人提不起精神。更别提那些所谓的“高级主题”了,比如自定义View和动画,描述得极其晦涩,缺乏清晰的数学公式推导和像素级别的解释,导致我看完后还是无法独立实现一个具有复杂交互效果的UI组件。这本书的深度和广度严重不匹配它的篇幅,感觉就像是把很多零散的、不同年代的零散笔记强行缝合到了一起,中间充满了断裂感。它更像是一本面向五年前的安卓工程师的“复习材料”,而不是一本面向当下开发者的“指南”。对于那些希望通过它来学习最新、最健壮的开发范式的读者来说,这无疑是一种资源的巨大浪费。

评分

对于我来说,开头第一二章好于第一行代码,后面写的不如第一行代码。

评分

市面上好的android书真的少的一只手都能数过来,幸运的是这本就是其中之一。如果是入门android的话,跟着书上的例子能够弄懂大部分基础,但是一些概念性的东西讲的不深入。后面几章用的都是国内用不了的服务,所以用处也比较有限。

评分

相当不错,不过社区貌似对 fragment和 activity的使用还有争议

评分

66666666

评分

没有细讲,网络论坛很好,项目驱动型

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

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