1、什么是Jetpack
Google2018年推出的一系列組件的統稱。其目的是為了統一安卓開發規范,提高安卓開發效率,提高應用的質量。
jetpack
總共分為四個部分
- Architecture :架構組件
- UI:UI組件
- Behavior:行為組件
- Foundation : 基礎組件
Jetpack官方地址:
2、架構組件
- Data Binding(數據綁定):使用聲明性格式將布局中的界面組件綁定到應用中的數據源。
- Lifecycles(生命周期感知):構建生命周期感知型組件,這些組件可以根據 Activity 或 Fragment 的當前生命周期狀態調整行為。
- LiveData(基于Lifecycles的數據發送):感知生命周期的組件,能在組件處于活躍的狀態發送數據。
- Navigation(頁面導航):構建和組織應用內界面,處理深層鏈接以及在屏幕之間導航。
- Paging(數據分頁): 在頁面中加載數據,并在 RecyclerView 中呈現。
- Room(數據庫): 創建、存儲和管理由 SQLite 數據庫支持的持久性數據。
- ViewModel(數據存儲):感知生命周期的數據存儲組件,一般和LiveData組合使用。
- WorkManager(后臺任務管理):調度和執行可延期且基于約束條件的后臺任務。
3、UI組件
- Animation&Transaction:動畫
- Auto,TV&Wear: 車載設備、電視等大屏設備、穿戴設備
- Emoji:在當前設備和舊版本設備上顯示表情符號。
- Fragment: 將您的應用細分為在一個 Activity 中托管的多個獨立屏幕。
- Layout:界面布局
- Palette:從圖片中提取具有代表性的調色板。
4、行為組件
- DownLoader Manager:下載管理
- Media&Playback:與其他應用共享媒體內容和控件。
- Permissions:應用權限
- Notifcations:應用通知
- Sharing:可以將快捷方式用作直接共享目標。
- Slice:在應用外顯示模板化界面元素。
5、基礎組件
- AppCompat:兼容性的基礎Api,允許在平臺舊版 API 上訪問新 API(很多使用 Material Design)。
- Android KTX:包含在 Android Jetpack 及其他 Android 庫中的一組 Kotlin 擴展程序。KTX 擴展程序可以為 Jetpack、Android 平臺及其他 API 提供簡潔的慣用 Kotlin 代碼
- Multidex:在搭載 Android 5 之前版本的設備上部署包含多個 dex 文件的應用。(分包)
- Test:在 Android 中進行測試。
以上有部分描述來自Jetpack官網:
https://developer.android.google.cn/jetpack/androidx/explorer
6、前提條件
- AndroidStudio:使用 Android Studio 3.2 及更高版本,現在已經開始使用4.0的版本之上了。
- gradle.properties設置
android.useAndroidX=true
android.enableJetifier=true
- 最低支持的Android版本為:minSdkVersion : 21
7、學習主要思路
提供幾條學習Jetpack的思路:
Activity\Fragment的生命周期:這個是Jetpack組件的核心點之一,lifecycle,ViewMode,LiveData都依賴生命周期。
像學習新控件一樣學習Jetpack控件:想想是如何學會RecyclerView等后面Google推出的新控件的,Jetpack中同樣包含了很多新的控件,這些控件學習起來并不是很復雜,都用幾次就會熟悉。
熟悉觀察者模式:很多組件都依靠觀察者模式,比如觀察Activity\Fragment的生命周期等等。
多寫代碼實操:多多練習,熟能生巧!
去官網參考示例代碼。