为什么要学习Jetpack
-
Jetpack是Google为解决Android开发碎片化,打造成熟健康生态圈提出的战略规划,是Google对Android未来提出的发展方向。
-
Jetpack现已成为面试必问,各大厂+github都已经在拥抱适配Jetpack了。
-
谷歌力推一统开发规范,support库停更
所以我认为只要是安卓开发的同学,都或者或晚的要拥抱Jetpack。
Jetpack核心组件介绍
-
Navigation:强大的APP导航组件,能够为Activity,Fragment,Dialog,FloatWindow提供导航。
-
Paging:强大的分页库组件,能够自动化加载页面初始化和分页(向前分页,向后分页)数据。
-
LiveData:基于生命周期的消息订阅组件,不会发生内存泄漏,不用反注册。
-
Room:灵活易用的数据库组件,对sqlite做了上层包装,无缝对接LiveData。
-
ViewModel:数据共享组件,能够实现数据的存储和页面间数据共享。
-
CameraX:强大的基于生命周期的相机控制组件。轻松定制视频录制&拍照功能。
-
DataBinding:空安全的数据与View双向绑定组件,减少异常率
-
WorkManager:强大的后台任务,异步任务管理组件
-
Lifecycles:生命周期管理组件
Jetpack包含了非常多的优秀的组件,但是目前国内关于Jetpack的文章质量良莠不齐,或者说直接翻译英文的比较多,难以引用到项目中。更别谈改造灵活应用了。 -
包括