android jetpack,Android Jetpack应用指南

第1章 初识Jetpack1

1.1 Android应用程序架构设计标准的缺失概论1

1.2 什么是Jetpack2

1.3 Jetpack与AndroidX3

1.4 迁移至AndroidX4

1.5 新建项目默认支持AndroidX6

1.6 总结8

第2章 LifeCycle9

2.1 LifeCycle的诞生9

2.2 使用LifeCycle解耦页面与组件10

2.2.1 案例分析10

2.2.2 LifeCycle的原理11

2.2.3 解决方案12

2.3 使用LifecycleService解耦Service与组件15

2.3.1 LifeCycleService基本介绍15

2.3.2 LifecycleService的具体使用方法16

2.4 使用ProcessLifecycleOwner监听应用程序的生命周期19

2.4.1 ProcessLifecycleOwner存在的意义19

2.4.2 ProcessLifecycleOwner的具体使用方法19

2.5 总结22

第3章 Navigation24

3.1 Navigation的诞生24

3.2 Navigation的主要元素25

3.3 使用Navigation26

3.3.1 创建Navigation Graph26

3.3.2 添加NavHostFragment28

3.3.3 创建destination30

3.3.4 完成Fragment页面切换33

3.3.5 使用NavController完成导航36

3.3.6 添加页面切换动画效果38

3.4 使用safe args插件传递参数40

3.4.1 常见的传递参数的方式40

3.4.2 使用safe args传递参数40

3.5 NavigationUI的使用方法43

3.5.1 NavigationUI存在的意义43

3.5.2 案例分析43

3.5.3 扩展延伸48

3.6 深层链接DeepLink49

3.6.1 DeepLink的两种应用场景49

3.6.2 PendingIntent的方式50

3.6.3 URL的方式52

3.7 总结54

第4章 ViewModel56

4.1 视图与数据模型之间的桥梁ViewModel56

4.2 ViewModel的生命周期特性57

4.3 ViewModel的基本使用方法58

4.4 ViewModel的原理62

4.5 ViewModel与AndroidViewModel64

4.6 ViewModel与onSaveInstanceState() 方法65

4.7 总结65

第5章 LiveData67

5.1 实时数据LiveData67

5.2 LiveData和ViewModel的关系68

5.3 LiveData的基本使用方法68

5.4 LiveData的原理71

5.5 LiveData.observeForever()方法72

5.6 ViewModel+LiveData实现Fragment间通信73

5.7 总结79

第6章 Room80

6.1 Android官方ORM库Room80

6.2 Room的基本使用方法81

6.2.1 Room的相关概念81

6.2.2 案例分析82

6.3 Room与LiveData、ViewModel结合使用87

6.3.1 LiveData和ViewModel带来的好处87

6.3.2 案例优化89

6.4 Room数据库升级91

6.4.1 使用Migration升级数据库91

6.4.2 异常处理92

6.4.3 Schema文件93

6.4.4 销毁与重建策略95

6.5 预填充数据库96

6.5.1 createFromAsset() API和createFromFile() API96

6.5.2 createFromAsset() API的使用方法97

6.6 总结101

第7章 WorkManager102

7.1 WorkManager的作用102

7.2 WorkManager的3个重要特点102

7.3 WorkManager的兼容方案103

7.4 WorkManager的基本使用方法104

7.4.1 添加依赖104

7.4.2 使用Worker类定义任务104

7.4.3 使用WorkRequest配置任务105

7.4.4 将任务提交给系统107

7.4.5 观察任务的状态107

7.4.6 取消任务108

7.4.7 WorkManager与Worker之间的参数传递108

7.4.8 周期性任务PeriodicWorkRequest110

7.4.9 任务链110

7.5 总结112

第8章 DataBinding113

8.1 DataBinding的意义和优势113

8.2 DataBinding的简单绑定114

8.2.1 未采用DataBinding的编码方式114

8.2.2 采用DataBinding完成简单的绑定116

8.3 DataBinding响应事件124

8.4 二级页面的绑定127

8.5 BindingAdapter的原理130

8.6 自定义BindingAdapter132

8.6.1 自定义BindingAdapter的基本方法132

8.6.2 方法重载135

8.6.3 多参数重载137

8.6.4 可选旧值138

8.7 双向绑定141

8.7.1 单向绑定和双向绑定141

8.7.2 实现双向绑定142

8.7.3 使用ObservableField优化双向绑定145

8.7.4 ObservableField与LiveData146

8.8 RecyclerView的绑定机制147

8.9 总结154

第9章 Paging155

9.1 Paging组件的意义155

9.2 Paging支持的架构类型155

9.3 Paging的工作原理157

9.4 Paging的3个核心类158

9.5 3种DataSource159

9.6 PositionalDataSource的使用方法160

9.7 PageKeyedDataSource的使用方法176

9.8 ItemKeyedDataSource的使用方法184

9.9 BoundaryCallback的使用方法190

9.9.1 BoundaryCallback的意义190

9.9.2 BoundaryCallback的使用流程分析191

9.9.3 项目演示192

9.10 总结202

第10章 MVVM架构204

10.1 MVVM架构与Jetpack204

10.2 数据模型驱动界面更新204

10.3 简要回顾Jetpack组件206

10.4 使用Jetpack组件构建MVVM应用程序207

10.5 总结224

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值