一、什么是jetpack
jetpack是Android官方推出的一个核心组件库,主要目的在于让App开发者开发出更加健壮,架构更好,品质更高的App。同时提高软件开发的效率。目前国内部分软件公司已经拥抱jetpack,但是因为一些历史原因,部分公司依然采用旧的开发模式。但是海外大多数企业已经都向jetpack靠拢了。jetpack主要包括四个组件库
- 基础,提供基础功能并向后兼容,例如常用的AppCompat就在这里
- 架构,提供快速的框架和软件设计方案,例如databinding快速数据绑定
- 行为,提供统一稳健的软件行为操作库,例如权限管理,耗时任务操作等
- 界面,囊括了许多界面相关的组件,例如动画,fragment,ViewPager2等
二、为什么使用jetpack
我们从Google官方的宣传中就可以直接了解到,Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法,减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者精力集中编写重要的代码。总结起来的话大致就是
- 替换以前的support库,提供一个更好,更加独立和稳健的兼容方案
- 官方实现了很多日常软件开发中需要用到的组件,消除重复样板代码
- 提高软件品质,核心库帮你绑定数据,管理生命周期和内容,让你专注在对自身业务重要的部分
- 当然,在提供了前面这些便利的同时开发效率肯定就提高了
三、jetpack核心库
jetpack比较常用的库主要包括
3.1、Architecture Compinents(架构组件)
- Data Bingding(数据绑定)
- Room(数据库)
- WorkManager(后台任务管家)
- Lifecycle(生命周期)
- Navigation(导航)
- Paging(分页)
- Data Binding(数据绑定)
- LiveData(底层数据通知更改视图)
- ViewModel(以注重生命周期的方式管理界面的相关数据)
- 其他
3.2、Foundation(基础)
- AppCompat(兼容套件)
- Android KTX(Kotlin代码库)
- Multidex (多处理dex的问题)
- Test(测试)
- 其他
3.3、Behavior(行为)
- Download manager(下载给管理器)
- Media & playback(媒体和播放)
- Notifications(通知)
- Permissions(权限)
- Preferences(偏好设置)
- Sharing(共享)
- Slices(切片)
- 其他
3.4、UI(视觉交互)
- Animation & transitions(动画)
- Fragment(Fragment)
- Layout(布局)
- Palette(调色板)
- 其他
四、参考
版权声明:本文为yaobao888原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。