深入淺出 Android Jetpack

《深入淺出 Android Jetpack》是2022年2月1日清華大學出版社出版的圖書,作者是蕭文翰。

基本介紹

  • 中文名:深入淺出 Android Jetpack
  • 作者:蕭文翰
  • 出版時間:2022年2月1日
  • 出版社:清華大學出版社
內容簡介,圖書目錄,

內容簡介

本書系統地講解Android Jetpack組件庫的使用和原理,具體涉及套用架構、生命周期管理、資料庫操作、UI數據綁定等。第1章概括地講述Android Jetpack的目標、內容等;第2~5章介紹Jetpack組件中的基礎內容,具體涉及用於不同Android版本間的UI兼容處理組件、用於Kotlin程式語言的KTX擴展組件、多Dex打包APK組件以及包含單元測試、UI測試、集成測試的測試組件;第6~13章介紹Jetpack組件庫中架構的內容,這也是本書的重點部分,具體涉及視圖綁定組件、生命周期組件、頁面導航組件等多種架構組件,以及用於本地資料庫存儲的Room組件和用於處理分頁載入的Paging組件。 通過使用Jetpack可以大大提升Android開發的效率,因此本書非常適合Android開發人員使用。

圖書目錄

第1章 概述 1
1.1 Android Jetpack是什麼 1
1.1.1 基礎部分 2
1.1.2 架構部分 2
1.1.3 界面部分 3
1.1.4 行為部分 4
1.2 Android Jetpack的發展史與AndroidX 5
1.2.1 Android App開發簡史 5
1.2.2 Android Jetpack的誕生和使命 5
1.2.3 Android Jetpack與AndroidX的關係 5
1.3 如何使用本書 6
1.3.1 開發環境概覽 6
1.3.2 本書的結構 7
1.3.3 本書的用法 7
第2章 Appcompat UI兼容組件 8
2.1 Appcompat概覽 8
2.2 集成Appcompat庫 9
2.3 App Bar 9
2.3.1 什麼是App Bar 9
2.3.2 添加ToolBar控制項 10
2.3.3 給ToolBar設定標題和子標題 11
2.3.4 在ToolBar上添加圖示 12
2.3.5 在ToolBar上增加返回按鈕 12
2.3.6 在ToolBar上添加選單 14
2.3.7 為ToolBar添加搜尋功能 16
2.3.8 自定義ToolBar樣式 17
2.3.9 ToolBar小結 18
2.4 AppCompatActivity與AppCompatDelegate 18
2.4.1 認識AppCompatActivity 19
2.4.2 實戰AppCompatDelegate 19
2.5 AppCompatDialogFragment 22
2.5.1 AppCompatDialogFragment和AppCompatDialog 22
2.5.2 實戰簡單對話框 23
2.5.3 實戰列表選擇對話框 25
2.5.4 自定義選單布局 30
2.5.5 AppCompatDialogFragment小結 32
2.6 AppCompatResources 32
2.6.1 點擊狀態選擇器 32
2.6.2 從resId獲取Drawable對象 33
2.7 AnimatedStateListDrawableCompat 33
2.7.1 定義動畫執行腳本 33
2.7.2 執行動畫 34
2.8 ActionMenuView 35
2.8.1 添加選單項 35
2.8.2 添加ActionMenuView 35
2.8.3 綁定ActionMenuView和選單項,並實現點擊回響 36
2.9 AppCompatAutoCompleteTextView與AppCompatMultiAutoCompleteTextView 37
2.9.1 認識ViewCompat類 37
2.9.2 理解PorterDuff混合模式 37
2.9.3 實戰更改背景色調 39
2.10 AppCompatButton和AppCompatToggleButton 40
2.10.1 設定按鈕文本風格 40
2.10.2 設定按鈕文本是否自動大寫 41
2.11 AppCompatCheckBox與AppCompatRadioButton 41
2.12 AppCompatCheckedTextView 42
2.13 AppCompatEditText 42
2.13.1 定義操作選單 42
2.13.2 實現所選文本自定義操作功能 43
2.14 AppCompatImageButton和AppCompatImageView 45
2.14.1 圖片色調適用場景 45
2.14.2 添加矢量圖素材 46
2.14.3 定義矢量圖色調 47
2.14.4 設定矢量圖色調 47
2.15 AppCompatSpinner 48
2.16 AppCompatTextView 50
2.16.1 文本自適應顯示使用場景 50
2.16.2 開啟自適應顯示模式 50
2.16.3 配置自定義縮放方式 52
2.16.4 通過預設值方式縮放 53
2.17 TooltipCompat 53
2.18 其他控制項及注意事項 54
第3章 Android KTX擴展組件 55
3.1 概述 55
3.2 Core KTX 56
3.2.1 Animation 56
3.2.2 Content 57
3.2.3 Database 58
3.2.4 Graphics 60
3.2.5 Util 64
3.2.6 View 66
3.3 Collection 67
3.3.1 集成Collection KTX 68
3.3.2 獲取集合中所有的Key和Value 68
3.3.3 集合的遍歷 68
3.3.4 集合元素的增加與替換 69
3.4 Fragment 70
3.4.1 集成Fragment KTX 70
3.4.2 Fragment事務操作 70
3.5 小結 71
第4章 MultiDex打包APK 72
4.1 APK解構 72
4.2 64KB方法數限制 72
4.3 避免64KB方法數限制 73
4.3.1 問題重現 73
4.3.2 使用MultiDex 74
4.3.3 MultiDex的局限性 75
4.3.4 縮減方法數 76
4.4 問題排查 77
第5章 Test構建測試 80
5.1 概述 80
5.2 構建App的最佳實踐 80
5.3 測試的最佳實踐 81
5.3.1 測試的分類 81
5.3.2 用於編寫測試代碼的目錄結構 81
5.3.3 選擇測試設備 82
5.3.4 添加測試依賴庫 82
5.4 單元測試 83
5.4.1 本地單元測試 83
5.4.2 設備單元測試 94
5.5 UI測試 96
5.5.1 Espresso 96
5.5.2 UI Automator 103
5.6 集成測試 109
5.6.1 運行針對Service的測試 109
5.6.2 運行針對Content Provider的測試 112
5.6.3 針對Broadcast的測試 116
第6章 ViewBinding和DataBinding 117
6.1 Android套用架構原則 117
6.1.1 分離關注點 117
6.1.2 通過模型驅動界面 118
6.1.3 官方建議的套用架構 118
6.1.4 Android Jetpack架構組件 119
6.2 視圖綁定 119
6.2.1 啟用視圖綁定支持 119
6.2.2 實戰視圖綁定 120
6.3 數據綁定 123
6.3.1 聲明式編程簡述 123
6.3.2 啟用數據綁定支持 124
6.3.3 可觀察的數據對象 124
6.3.4 實戰單向數據綁定 126
6.3.5 創建和自定義綁定類 133
6.3.6 綁定適配器 134
6.3.7 雙向數據綁定 136
第7章 生命周期 139
7.1 概述 139
7.2 實戰Lifecycle組件 139
7.2.1 添加依賴項 140
7.2.2 實現生命周期感知接口 140
7.2.3 使用生命周期感知類 141
7.3 Lifecycle KTX API 141

熱門詞條

聯絡我們