Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳实践、减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。
1.基础组件
(1)AppCompat:使得支持较低的Android版本。从以前继承Activity到现在继承AppCompatActivity就属于这一部分
(2)Android KTX:Kotlin 的扩展支持库
(3)Multidex:多 dex 文件支持
(4)Test:测试支持库
2. 架构组件
(1)Data Binding:MVVM 的一种实践`
(2)Lifecycles:管理你的 Activity 和 Fragment 生命周期
(3)LiveData:通过观察者模式感知数据变化,类比 RxJava
(4)Navigation:处理 Fragment 导航相关逻辑
(5)Paging:分页数据加载方案
(6)Room:官方 ORM 库
(7)ViewModel:通过数据驱动 V 视图发生改变
(8)WorkManager:管理后台任务
3. 行为组件
(1)DownloadManager:管理下载任务
(2)Media App:多媒体播放和一些向后兼容的API。主要包含 MediaPlayer 和 ExoPlayer
(3)Notifications:提供向后兼容的通知 API,支持 Wear 和 Auto
(4)Permissions:权限管理,这个应该都接触过。用于检查和请求应用权限
(5)Settings:Preference 相关 API。基本每个应用都会用到
(6)Share Action:提供分享操作。这块在国内使用的不多,都是自己封装或者采用第三方方案
(7)Slices:可以让应用通过外部(其他 APP)显示 APP 界面(通过设备自带的搜索,语音助手等)
4. 界面组件
(1)Animations and Transitions:动画,界面转场等
(2)Auto:针对车辆的标准化界面和模式
(3)Emoji:表情符号相关
(4)Fragment:基础概念
(5)Layout:基础概念
(6)Palette-Colors:调色板
(7)TV:Android TV 开发相关
(8)Wear:可穿戴设备(目前主要是手表)开发相关