• 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
  • 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
  • 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
  • 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
  • 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
  • 当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社
21年品牌 40万+商家 超1.5亿件商品

当当正版 深入浅出AndroidJetpack 萧文翰 9787302596103 清华大学出版社

新华书店直发 全新正版 急速发货 开票联系客服

53.72 6.8折 79 全新

库存3件

北京西城
认证卖家担保交易快速发货售后保障

作者萧文翰

出版社清华大学出版社

ISBN9787302596103

出版时间2022-02

装帧平装

开本16开

定价79元

货号29382902

上书时间2024-10-19

建德书局的书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

众所周知,在移动应用领域,Android App以77.14%的占有率(2019年第二季度统计数据)在市场遥遥领先。高居榜首的Android操作系统覆盖了更多的用户,也吸引越来越多的开发者投入移动开发的领域。
在实际开发中,原生Android开发的优势在于对设备硬件的访问具有更高权限和自由度。跨平台技术解决方案虽层出不穷,但都无法完全替代原生开发。Google在2017年年度开发者大会上首次发布了Jetpack组件集,并在之后的每年对其进行完善。从Google官方的视角看,Android Jetpack组件集不是简单的一个库或多个库,而是Google对Android App开发的一种态度和指导思想。
本书以新的Android Jetpack组件库、流行版本的Android操作系统以及新版本的Android Studio为例系统讲解Android Jetpack的使用,具体涉及应用架构、生命周期管理、数据库操作、UI数据绑定等方方面面,并和实际案例相结合,突出其实用性。此外,在必要时,本书还将从源码层面剖析Jetpack组件,让读者理解Google官方的设计思想。
初学者可以通过阅读本书快速搭建App,开发者可以通过阅读本书优化已有的项目代码,让程序更高效地运行。
天下之学问,都不出“道”和“术”的范围。本书讲“术”,并希望通过“术”的内容向读者传达更多“道”的思想。技术的更新迭代速度之快有目共睹,想必无论你是有经验的开发人员还是初入行的新手,都知道这一点。而只有掌握技术的核心思想,才能做到“以不变应万变”。
后,向我的家人,包括父母、妻子表示感谢,你们对家庭无私的奉献使我能更专注于本书的创作;同时,感谢我的同事们,在我感到困惑的时候,是你们与我一起并肩战斗,搞定一个又一个技术难题。
感谢您选购本书,希望本书的内容能够对您有所帮助。由于个人水平所限,书中难免出现疏漏之处,请不吝赐教,非常感谢!
代码下载
本书的代码可扫描下方的二维码获取,也可按提示把下载链接转发到自己的邮箱中下载。如果下载有问题,请发送电子邮件至booksaga@126.com,邮件主题为“深入浅出Android Jetpack”。

 

编  者    
2021年9月   



导语摘要

本书系统地讲解Android Jetpack组件库的使用和原理,具体涉及应用架构、生命周期管理、数据库操作、UI数据绑定等。第1章概括地讲述Android Jetpack的目标、内容等;第2~5章介绍Jetpack组件中的基础内容,具体涉及用于不同Android版本间的UI兼容处理组件、用于Kotlin编程语言的KTX扩展组件、多Dex打包APK组件以及包含单元测试、UI测试、集成测试的测试组件;第6~13章介绍Jetpack组件库中架构的内容,这也是本书的重点部分,具体涉及视图绑定组件、生命周期组件、页面导航组件等多种架构组件,以及用于本地数据库存储的Room组件和用于处理分页加载的Paging组件。 通过使用Jetpack可以大大提升Android开发的效率,因此本书非常适合Android开发人员使用。



商品简介

本书系统地讲解Android Jetpack组件库的使用和原理,具体涉及应用架构、生命周期管理、数据库操作、UI数据绑定等。第1章概括地讲述Android Jetpack的目标、内容等;第2~5章介绍Jetpack组件中的基础内容,具体涉及用于不同Android版本间的UI兼容处理组件、用于Kotlin编程语言的KTX扩展组件、多Dex打包APK组件以及包含单元测试、UI测试、集成测试的测试组件;第6~13章介绍Jetpack组件库中架构的内容,这也是本书的重点部分,具体涉及视图绑定组件、生命周期组件、页面导航组件等多种架构组件,以及用于本地数据库存储的Room组件和用于处理分页加载的Paging组件。 通过使用Jetpack可以大大提升Android开发的效率,因此本书非常适合Android开发人员使用。



作者简介

萧文翰,从业8年,移动开发工程师,先后就职于多家公司,在Android移动开发与测试领域拥有丰富经验。出版著作《Flutter从0基础到App上线》,翻译著作《Android App Hook and Plug-In Technology》等。



目录

第1章  概述 1
1.1  Android Jetpack是什么 1
1.1.1  基础部分 2
1.1.2  架构部分 2
1.1.3  界面部分 3
1.1.4  行为部分 4
1.2  Android Jetpack的发展史与AndroidX 5
1.2.1  Android App开发简史 5
1.2.2  Android Jetpack的诞生和使命 5
1.2.3  Android Jetpack与AndroidX的关系 5
1.3  如何使用本书 6
1.3.1  开发环境概览 6
1.3.2  本书的结构 7
1.3.3  本书的用法 7
第2章  Appcompat UI兼容组件 8
2.1  Appcompat概览 8
2.2  集成Appcompat库 9
2.3  App Bar 9
2.3.1  什么是App Bar 9
2.3.2  添加ToolBar控件 10
2.3.3  给ToolBar设置标题和子标题 11
2.3.4  在ToolBar上添加图标 12
2.3.5  在ToolBar上增加返回按钮 12
2.3.6  在ToolBar上添加菜单 14
2.3.7  为ToolBar添加搜索功能 16
2.3.8  自定义ToolBar样式 17
2.3.9  ToolBar小结 18
2.4  AppCompatActivity与AppCompatDelegate 18
2.4.1  认识AppCompatActivity 19
2.4.2  实战AppCompatDelegate 19
2.5  AppCompatDialogFragment 22
2.5.1  AppCompatDialogFragment和AppCompatDialog 22
2.5.2  实战简单对话框 23
2.5.3  实战列表选择对话框 25
2.5.4  自定义菜单布局 30
2.5.5  AppCompatDialogFragment小结 32
2.6  AppCompatResources 32
2.6.1  点击状态选择器 32
2.6.2  从resId获取Drawable对象 33
2.7  AnimatedStateListDrawableCompat 33
2.7.1  定义动画执行脚本 33
2.7.2  执行动画 34
2.8  ActionMenuView 35
2.8.1  添加菜单项 35
2.8.2  添加ActionMenuView 35
2.8.3  绑定ActionMenuView和菜单项,并实现点击响应 36
2.9  AppCompatAutoCompleteTextView与AppCompatMultiAutoCompleteTextView 37
2.9.1  认识ViewCompat类 37
2.9.2  理解PorterDuff混合模式 37
2.9.3  实战更改背景色调 39
2.10  AppCompatButton和AppCompatToggleButton 40
2.10.1  设置按钮文本风格 40
2.10.2  设置按钮文本是否自动大写 41
2.11  AppCompatCheckBox与AppCompatRadioButton 41
2.12  AppCompatCheckedTextView 42
2.13  AppCompatEditText 42
2.13.1  定义操作菜单 42
2.13.2  实现所选文本自定义操作功能 43
2.14  AppCompatImageButton和AppCompatImageView 45
2.14.1  图片色调适用场景 45
2.14.2  添加矢量图素材 46
2.14.3  定义矢量图色调 47
2.14.4  设置矢量图色调 47
2.15  AppCompatSpinner 48
2.16  AppCompatTextView 50
2.16.1  文本自适应显示使用场景 50
2.16.2  开启自适应显示模式 50
2.16.3  配置自定义缩放方式 52
2.16.4  通过预设值方式缩放 53
2.17  TooltipCompat 53
2.18  其他控件及注意事项 54
第3章  Android KTX扩展组件 55
3.1  概述 55
3.2  Core KTX 56
3.2.1  Animation 56
3.2.2  Content 57
3.2.3  Database 58
3.2.4  Graphics 60
3.2.5  Util 64
3.2.6  View 66
3.3  Collection 67
3.3.1  集成Collection KTX 68
3.3.2  获取集合中所有的Key和Value 68
3.3.3  集合的遍历 68
3.3.4  集合元素的增加与替换 69
3.4  Fragment 70
3.4.1  集成Fragment KTX 70
3.4.2  Fragment事务操作 70
3.5  小结 71
第4章  MultiDex打包APK 72
4.1  APK解构 72
4.2  64KB方法数限制 72
4.3  避免64KB方法数限制 73
4.3.1  问题重现 73
4.3.2  使用MultiDex 74
4.3.3  MultiDex的局限性 75
4.3.4  缩减方法数 76
4.4  问题排查 77
第5章  Test构建测试 80
5.1  概述 80
5.2  构建App的实践 80
5.3  测试的实践 81
5.3.1  测试的分类 81
5.3.2  用于编写测试代码的目录结构 81
5.3.3  选择测试设备 82
5.3.4  添加测试依赖库 82
5.4  单元测试 83
5.4.1  本地单元测试 83
5.4.2  设备单元测试 94
5.5  UI测试 96
5.5.1  Espresso 96
5.5.2  UI Automator 103
5.6  集成测试 109
5.6.1  运行针对Service的测试 109
5.6.2  运行针对Content Provider的测试 112
5.6.3  针对Broadcast的测试 116
第6章  ViewBinding和DataBinding 117
6.1  Android应用架构原则 117
6.1.1  分离关注点 117
6.1.2  通过模型驱动界面 118
6.1.3  官方建议的应用架构 118
6.1.4  Android Jetpack架构组件 119
6.2  视图绑定 119
6.2.1  启用视图绑定支持 119
6.2.2  实战视图绑定 120
6.3  数据绑定 123
6.3.1  声明式编程简述 123
6.3.2  启用数据绑定支持 124
6.3.3  可观察的数据对象 124
6.3.4  实战单向数据绑定 126
6.3.5  创建和自定义绑定类 133
6.3.6  绑定适配器 134
6.3.7  双向数据绑定 136
第7章  生命周期 139
7.1  概述 139
7.2  实战Lifecycle组件 139
7.2.1  添加依赖项 140
7.2.2  实现生命周期感知接口 140
7.2.3  使用生命周期感知类 141
7.3  Lifecycle KTX API 141
第8章  页面导航 143
8.1  页面导航原则 143
8.1.1  向上和返回按钮的逻辑 144
8.1.2  设计导航堆栈 144
8.1.3  针对深层链接跳转的返回处理 144
8.2  实战Navigation组件 145
8.2.1  一个简单的示例 145
8.2.2  添加导航目的地 151
8.2.3  构建导航图 154
8.2.4  在目的地之间跳转 159
8.3  Navigation KTX API 176
8.3.1  Navigation Runtime KTX 176
8.3.2  Navigation Fragment KTX 177
8.3.3  Navigation UI KTX 180
第9章  ViewModel视图数据模型 182
9.1  概述 182
9.2  实战ViewModel 182
9.2.1  处理屏幕旋转 183
9.2.2  在Fragment之间共享数据 185
9.2.3  AndroidViewModel 187
9.3  与DataBinding组件配合使用 188
第10章  LiveData实时数据 192
10.1  概述 192
10.2  LiveData组件的简单使用 193
10.3  跨组件数据共享 195
10.4  转换、获取、合并LiveData对象 197
10.4.1  转换LiveData对象类型 197
10.4.2  获取LiveData对象 198
10.4.3  合并多个LiveData对象 201
10.5  与其他架构组件配合使用 202
10.5.1  LiveData与LifeCycle 202
10.5.2  ViewModel、LiveData与DataBinding 203


第11章  WorkManager任务管理器 207
11.1  概述 207
11.2  添加WorkManager依赖 208
11.3  实战WorkManager 208
11.3.1  定义任务 209
11.3.2  单次任务的调度 210
11.3.3  周期性任务的调度 210
11.3.4  预约执行的任务 211
11.3.5  为任务添加执行策略 211
11.3.6  为失败的任务设置重试策略 212
11.3.7  任务的管理 213
11.3.8  链式任务流 217
11.3.9  向任务传递数据 218
11.3.10  在任务中执行异步操作 220
11.3.11  针对需要长时间执行的任务的处理 221
第12章  Room数据库组件 224
12.1  概述 224
12.2  Room的简单使用 225
12.2.1  添加Room依赖 225
12.2.2  设计数据表并实现实体类 226
12.2.3  实现数据库操作 226
12.3  实体类 228
12.3.1  构建复合主键 228
12.3.2  自定义字段/数据表名 228
12.3.3  忽略特定的成员变量 229
12.3.4  定义实体之间的关系 229
12.4  数据访问对象类 235
12.5  DAO类的实现规范 235
12.6  数据的查询操作 235
12.6.1  基本数据查询操作 235
12.6.2  多条件查询 236
12.6.3  过滤查询结果 237
12.6.4  数据的插入操作 237
12.6.5  数据的更新操作 238
12.6.6  数据的删除操作 238
12.7  数据库的升级 238
12.8  设置预置数据 239
12.9  类型转换器 240
12.10  与LiveData组件配合使用 241
第13章  Paging分页加载组件 243
13.1  概述 243
13.2  实战Paging组件 243
13.2.1  添加依赖项 244
13.2.2  Paging组件的结构 244
13.2.3  构建数据源 245
13.2.4  构建视图模型 248
13.2.5  构建用户界面 248
13.2.6  监听和显示加载状态 250



内容摘要

本书系统地讲解Android Jetpack组件库的使用和原理,具体涉及应用架构、生命周期管理、数据库操作、UI数据绑定等。第1章概括地讲述Android Jetpack的目标、内容等;第2~5章介绍Jetpack组件中的基础内容,具体涉及用于不同Android版本间的UI兼容处理组件、用于Kotlin编程语言的KTX扩展组件、多Dex打包APK组件以及包含单元测试、UI测试、集成测试的测试组件;第6~13章介绍Jetpack组件库中架构的内容,这也是本书的重点部分,具体涉及视图绑定组件、生命周期组件、页面导航组件等多种架构组件,以及用于本地数据库存储的Room组件和用于处理分页加载的Paging组件。 通过使用Jetpack可以大大提升Android开发的效率,因此本书非常适合Android开发人员使用。



主编推荐

萧文翰,从业8年,移动开发工程师,先后就职于多家公司,在Android移动开发与测试领域拥有丰富经验。出版著作《Flutter从0基础到App上线》,翻译著作《Android App Hook and Plug-In Technology》等。



   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP