一、Jetpack是什么?
Jetpack是一个由多个库组成的套件,可帮助Android开发者使用最合适的方式去开发,减少重复样板代码编写,并且兼容Android各个版本和设备,提高开发效率和应用的稳定性。
二、Jetpack组件的作用
- 遵循最佳做法
Jetpack库采用最新的方式去构建,可减少应用崩溃和内存泄漏 - 消除样板代码
Jetpack提供各种库帮助开发者构建复杂的应用,如后台任务,导航,生命周期管理,数据绑定等 - 减少不一致
Jetpack库在android各个版本和设备运行都是一致的,帮助开发者减少适配工作,提高开发效率
三、Jetpack组件的组成
从上图可以看出,Jetpack一共分为4类:Architecture(架构)、Foundationy(基础)、Behavior(行为)、UI(界面)
- Architecture(架构)
databing:使用声明性格式将布局中的界面组件绑定到应用中的数据源。
lifecycles:管理Activity或者Fragment的生命周期。
LiveData:在数据改变时通知视图。
ViewModel:存储界面相关的数据,这些数据不会在应用旋转时销毁。
Room:SQLite 对象映射库,将 SQLite 表数据转换为 Java 对象。
WorkManager:管理后台任务
Navigation:处理应用内导航所需的一切 - Foundationy(基础)
Android KTX : 提供 kotlin 语言支持;
AppCompat : 兼容较低版本的Android 系统;
Multidex:为具有多个 DEX 文件的应用提供支持;
Test :用于单元和运行时界面测试的 Android 测试框架 - Behavior(行为)
CameraX :轻松地向应用中添加相机功能
Download manager:安排和管理大量下载任务
Media & playback:用于媒体播放和路由(包括 Google Cast)的向后兼容 API
Notifications:提供向后兼容的通知 API,支持 Wear 和 Auto
Permissions : 用于检查和请求应用权限的兼容性 API Preferences(偏好设置)
Sharing 提供适合应用操作栏的共享操作
Slices 创建可在应用外部显示应用数据的灵活界面元素 - UI(界面)
Animation & transitions :动画和过渡
Auto(Auto组件)
Emoji:标签
Fragment
Layout布局
Palette :调色板
TV :有助于开发 Android TV 应用的组件
Wear OS by Google :穿戴设备
三、总结
以上是jetpack组件的概述,后续会总结和分析Jetpack 中一些常用的组件。