文檔將向您介紹構建基于Jetpack的簡單應用程序的基本過程。
一、設置你的應用程序
執行以下步驟將應用程序設置為使用Jetpack:
1、啟動Android Studio 3.2或更高版本,并一如既往地在“Create Android Project
”和“Target Android Devices
”中輸入信息。
如果您在Kotlin中編寫應用程序,請記得在Create Android Project屏幕上查看Include Kotlin支持框。
2、在“Create Android Project
”屏幕后,將顯示“Add an Activity to Mobile
”屏幕,為您提供用于啟動項目的各種模板。 Activity&Fragment + ViewModel
模板(如圖1所示)旨在使Jetpack輕松融入您的應用程序。 單擊該模板,然后單擊“Next
”。
圖1. Activity&Fragment + ViewModel模板
3、在“Configure Activity
”屏幕上,輸入用于啟動項目的初始活動,片段和ViewModel對象的名稱。 (可選)您還可以輸入片段包路徑。 然后,單擊“Finish
”。
圖2. Activity&Fragment + ViewModel模板的Configure Activity屏幕
在項目中打開java文件夾顯示,如圖3所示,項目最初包含三個類:
StartActivity
,StartFragment
和StartViewModel
。圖3. Activity&Fragment + ViewModel模板放入項目的初始類
-
StartActivity
是您應用的入口點。 它是Activity的存根,用作應用程序初始屏幕中顯示的片段的容器。 -
StartFragment
是初始片段的存根,供您在應用中使用。 -
StartViewModel
是初始ViewModel的存根,供您在應用中使用。
2、利用Jetpack
有了這些部分,您可以選擇實現ViewModel對象,如下例所示:
class StartViewModel : ViewModel() {
private val _data = MutableLiveData<String>()
val data: LiveData<String>
get() = _data
init {
_data.value = "Hello, Jetpack!"
}
}
如果您的應用包含多個屏幕,則可以添加Navigation類以實現片段的導航觸發器。 以下代碼是實現導航觸發器的示例:
// Set up a click listener on the login button
view?.findViewById<Button>(R.id.navigate_bt)?.setOnClickListener {
// Navigate to the login destination
view?.let { Navigation.findNavController(it).navigate(R.id.end_action) }
如果您的應用需要本地訪問SQLite數據,您還可以添加Room持久性庫。 如果您的應用需要在單個屏幕上顯示大量數據,則應考慮使用分頁庫。
三、配置Gradle文件
要使用Jetpack,您必須記住在gradle文件中添加適當的行。 由于此應用程序使用ViewModel,LiveData和NavigationController,因此其Gradle文件包含以下行:
// LiveData + ViewModel
implementation "android.arch.lifecycle:extensions:$rootProject.archLifecycleVersion"
// Navigation
implementation 'androidx.navigation:navigation-fragment:' + rootProject.navigationVersion
implementation 'androidx.navigation:navigation-ui:' + rootProject.navigationVersion
四、學到更多
要了解有關本文檔中討論的示例和類的更多信息,請參閱以下資源:
- Android架構組件
- ComponentsBasicSample
向日葵演示應用程序使用許多不同的Jetpack組件來演示Android開發最佳實踐。