1、什么是Jetpack
Google2018年推出的一系列組件的統(tǒng)稱(chēng)。其目的是為了統(tǒng)一安卓開(kāi)發(fā)規(guī)范,提高安卓開(kāi)發(fā)效率,提高應(yīng)用的質(zhì)量。

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