Android Jetpack套用指南

Android Jetpack套用指南

《Android Jetpack套用指南》由電子工業出版社於2020年7月出版,作者是葉坤。本書講解的是Android Jetpack最核心的內容—架構

基本介紹

  • 中文名:Android Jetpack套用指南
  • 作者:葉坤
  • 類別:計算機
  • 出版社:電子工業出版社
  • 出版時間:2020年7月
  • 頁數:248 頁
  • 定價:79 元
  • 開本:16 開
  • ISBN:9787121390555
內容簡介,圖書目錄,作者簡介,

內容簡介

《Android Jetpack套用指南》假設讀者對Android應用程式有基本的了解,希望系統學習Jetpack,並打算最終使用Jetpack組件架構符合MVVM規範的應用程式。

圖書目錄

第1章 初識JETPACK 1
1.1 ANDROID應用程式架構設計標準的缺失概論 1
1.2 什麼是JETPACK2
1.3 JETPACK與ANDROIDX 3
1.4 遷移至ANDROIDX 4
1.5 新建項目默認支持ANDROIDX6
1.6 總結 8
第2章 LIFECYCLE 9
2.1 LIFECYCLE的誕生 9
2.2 使用LIFECYCLE解耦頁面與組件 10
2.2.1 案例分析 10
2.2.2 LifeCycle的原理 11
2.2.3 解決方案 12
2.3 使用LIFECYCLESERVICE解耦SERVICE與組件 15
2.3.1 LifeCycleService基本介紹 15
2.3.2 LifecycleService的具體使用方法 16
2.4 使用PROCESSLIFECYCLEOWNER監聽應用程式的生命周期 19
2.4.1 ProcessLifecycleOwner存在的意義 19
2.4.2 ProcessLifecycleOwner的具體使用方法 19
2.5 總結 22
第3章 NAVIGATION 24
3.1 NAVIGATION的誕生 24
3.2 NAVIGATION的主要元素 25
3.3 使用NAVIGATION 26
3.3.1 創建Navigation Graph 26
3.3.2 添加NavHostFragment 28
3.3.3 創建destination 30
3.3.4 完成Fragment頁面切換 33
3.3.5 使用NavController完成導航 36
3.3.6 添加頁面切換動畫效果 38
3.4 使用SAFE ARGS外掛程式傳遞參數 40
3.4.1 常見的傳遞參數的方式 40
3.4.2 使用safe args傳遞參數 40
3.5 NAVIGATIONUI的使用方法 43
3.5.1 NavigationUI存在的意義 43
3.5.2 案例分析 43
3.5.3 擴展延伸 48
3.6 深層連結DEEPLINK 49
3.6.1 DeepLink的兩種套用場景 49
3.6.2 PendingIntent的方式 50
3.6.3 URL的方式 52
3.7 總結 54
第4章 VIEWMODEL 56
4.1 視圖與數據模型之間的橋樑VIEWMODEL 56
4.2 VIEWMODEL的生命周期特性 57
4.3 VIEWMODEL的基本使用方法 58
4.4 VIEWMODEL的原理 62
4.5 VIEWMODEL與ANDROIDVIEWMODEL 64
第5章 LIVEDATA 67
5.1 實時數據LIVEDATA 67
5.2 LIVEDATA和VIEWMODEL的關係 68
5.3 LIVEDATA的基本使用方法 68
5.4 LIVEDATA的原理 71
第6章 ROOM 80
6.1 ANDROID官方ORM庫ROOM80
6.2 ROOM的基本使用方法 81
6.2.1 Room的相關概念 81
6.2.2 案例分析 82
6.3 ROOM與LIVEDATA、VIEWMODEL結合使用87
6.3.1 LiveData和ViewModel帶來的好處 87
6.3.2 案例最佳化 89
6.4 ROOM資料庫升級 91
6.4.1 使用Migration升級資料庫 91
6.4.2 異常處理 92
6.4.3 Schema檔案 93
6.4.4 銷毀與重建策略 95
6.5 預填充資料庫 96
第7章 WORKMANAGER102
7.1 WORKMANAGER的作用 102
7.2 WORKMANAGER的3個重要特點 102
7.3 WORKMANAGER的兼容方案 103
7.4 WORKMANAGER的基本使用方法 104
7.4.1 添加依賴 104
7.4.2 使用Worker類定義任務 104
7.4.3 使用WorkRequest配置任務105
7.4.4 將任務提交給系統 107
7.4.5 觀察任務的狀態 107
7.4.6 取消任務 108
7.4.7 WorkManager與Worker之間的參數傳遞 108
7.4.8 周期性任務PeriodicWorkRequest110
7.4.9 任務鏈 110
7.5 總結 112
第8章 DATABINDING 113
8.1 DATABINDING的意義和優勢 113
8.2 DATABINDING的簡單綁定 114
8.2.1 未採用DataBinding的編碼方式 114
8.2.2 採用DataBinding完成簡單的綁定 116
8.3 DATABINDING回響事件 124
8.4 二級頁面的綁定 127
8.5 BINDINGADAPTER的原理 130
8.6 自定義BINDINGADAPTER 132
8.6.1 自定義BindingAdapter的基本方法 132
8.6.2 方法重載 135
8.6.3 多參數重載 137
8.6.4 可選舊值 138
8.7 雙向綁定 141
8.7.1 單向綁定和雙向綁定 141
8.7.2 實現雙向綁定 142
8.7.3 使用ObservableField最佳化雙向綁定 145
8.7.4 ObservableField與LiveData 146
8.8 RECYCLERVIEW的綁定機制 147
8.9 總結 154
第9章 PAGING 155
9.1 PAGING組件的意義 155
9.2 PAGING支持的架構類型 155
9.3 PAGING的工作原理 157
9.4 PAGING的3個核心類 158
9.5 3種DATASOURCE 159
9.6 POSITIONALDATASOURCE的使用方法 160
9.7 PAGEKEYEDDATASOURCE的使用方法 176
9.8 ITEMKEYEDDATASOURCE的使用方法 184
9.9 BOUNDARYCALLBACK的使用方法 190
9.9.1 BoundaryCallback的意義 190
9.9.2 BoundaryCallback的使用流程分析 191
9.9.3 項目演示 192
9.10 總結 202
第10章 MVVM架構 204
10.1 MVVM架構與JETPACK 204
10.2 數據模型驅動界面更新 204
10.3 簡要回顧JETPACK組件 206
10.4 使用JETPACK組件構建MVVM應用程式 207
10.5 總結 224

作者簡介

葉坤,畢業於閩南師範大學計算機系。曾先後就職於網龍、搜狐暢遊17173、豆瓣。在豆瓣任職期間,負責豆瓣FMAndroid客戶端的研發工作。現為美餐網資深Android工程師,負責美餐行星項目Android客戶端的研發工作。
他在大學期間便開始自學Android研發技術,從事Android研發已有10年,曾譯《Android高性能編程》一書。

相關詞條

熱門詞條

聯絡我們