第1章 初識AndroidStudio 1
1.1 什麼是AndroidStudio 1
1.1.1 Android Studio簡介 1
1.1.2 係統要求 2
1.1.3 下載地址 2
1.1.4 為什麼要用Android Studio 2
1.2 Android Studio的特點 3
1.3 macOS環境配置 7
1.3.1 配置JDK 7
1.3.2 下載Android Studio 8
1.3.3 配置Android的環境變量 8
1.4 Windows環境配置 9
1.4.1 配置JDK 9
1.4.2 配置Android Studio 10
1.4.3 配置Android的環境變量 11
1.5 Linux 環境配置 12
1.5.1 配置JDK 12
1.5.2 配置Android Studio 12
1.5.3 配置Android的環境變量 13
1.6 認識歡迎界麵 13
1.6.1 最近打開的項目 14
1.6.2 開始一個項目 14
1.7 認識配置界麵 15
1.8 幫助和教程 19
1.9 更新AndroidStudio版本 22
1.10 配置Android Studio更新通道 23
1.10.1 在偏好設置中配置更新通道 23
1.10.2 在檢測結果對話框中配置更新通道 23
1.10.3 單獨下載最近更新的版本 23
1.10.4 四種版本的區彆 24
1.11 在Android Studio中使用代理 25
1.12 認識偏好設置 26
1.12.1 基礎配置 27
1.12.2 個性化配置 28
1.13 認識工作颱 30
1.14 認識工具窗口 33
第2章 項目與模塊 37
2.1 Android Studio的項目結構 37
2.1.1 項目和模塊 37
2.1.2 基本的項目結構 38
2.2 導入項目和模塊 40
2.2.1 導入Android Studio項目 40
2.2.2 導入Eclipse項目 40
2.2.3 導入Android示例代碼 44
2.2.4 導入模塊 44
2.2.5 導入.JAR/.AAR 46
2.2.6 從VCS檢齣項目 47
2.3 創建項目和模塊 49
2.3.1 創建項目 49
2.3.2 創建應用程序模塊 53
2.3.3 創建Android公共庫模塊 55
2.4 刪除模塊 57
2.5 添加so文件 58
2.6 創建類和文件 59
2.7 創建Activity 61
2.7.1 Activity模闆列錶 61
2.7.2 Activity Gallery 61
2.7.3 新建一個Activity 62
2.8 創建Fragment文件 64
2.9 創建Service文件 65
2.9.1 創建Service文件 66
2.9.2 創建Intent Service文件 66
2.10 創建自定義組件 67
2.11 創建App Widget 69
2.12 創建可編譯的資源文件 70
2.12.1 可編譯的資源文件 70
2.12.2 創建可編譯的資源文件 72
2.12.3 資源限定符 74
2.13 創建不同分辨率的圖標 77
2.13.1 啓動圖標 78
2.13.2 活動欄和選項卡圖標 79
2.13.3 通知圖標 80
2.14 創建矢量圖 81
2.14.1 使用定義好的素材圖標 81
2.14.2 使用本地的SVG文件 81
2.15 創建AIDL文件 82
2.16 創建Android文件夾 83
2.17 創建Resource Bundle文件 84
第3章 布局 86
3.1 認識布局 86
3.1.1 Android中定義布局的方法 86
3.1.2 快速開始 87
3.2 設計布局 88
3.2.1 文本編輯器 88
3.2.2 可視化布局編輯器 89
3.3 組件列錶 90
3.4 預覽 94
3.4.1 設置控件屬性 94
3.4.2 警告和錯誤提示 94
3.4.3 界麵縮放 96
3.4.4 控件操作 96
3.5 結構樹 96
3.5.1 快速轉換布局屬性 97
3.5.2 選擇控件 97
3.5.3 跳到源碼 97
3.6 屬性 97
3.7 工具欄 99
第4章 管理 103
4.1 項目窗口 103
4.1.1 視圖模式 103
4.1.2 常用設置和操作 105
4.2 項目管理 110
4.2.1 打開和關閉項目 110
4.2.2 管理最近打開的項目 111
4.3 文件管理 112
4.3.1 文件同步 112
4.3.2 導齣到HTML 112
4.3.3 切換文件編碼方式 113
4.3.4 切換行分隔符 113
4.3.5 使文件隻讀 114
4.3.6 使用省電模式 114
4.3.7 打開文件/文件夾所在磁盤目錄 114
4.4 Android Studio管理 115
4.4.1 隱藏/顯示/退齣Android Studio 115
4.4.2 清除緩存/重啓Android Studio 116
4.5 收藏夾 116
4.5.1 添加到收藏夾 116
4.5.2 管理收藏夾 118
4.6 TODO 119
4.6.1 添加TODO任務 119
4.6.2 查看TODO任務 120
4.6.3 TODO工具窗口常用操作 120
4.6.4 設置TODO 122
4.6.5 使用TODO分配代碼Review任務 123
第5章 編輯 126
5.1 撤消/重做/剪切/復製/粘貼 126
5.2 復製技巧 127
5.2.1 復製為純文本 127
5.2.2 復製引用 127
5.2.3 從復製曆史中選擇粘貼 127
5.2.4 設置粘貼曆史記錄的個數 128
5.2.5 復製行 128
5.3 閤並兩行內容 129
5.4 選擇技巧 129
5.4.1 擴大選擇範圍 129
5.4.2 縮小選擇範圍 130
5.4.3 使用列選擇模式 130
5.5 縮進設置 131
5.6 自動補全當前的語句 131
5.7 一鍵切換大小寫字母 132
5.8 查找工具欄 132
5.8.1 打開查找工具欄 132
5.8.2 快速查找 133
5.8.3 查找範圍設置 133
5.9 在查找結果中跳轉 134
5.10 選擇查找結果 134
5.11 指定查找路徑 135
5.12 替換 136
5.13 指定替換路徑 137
5.14 在結構中查找和替換 139
5.15 查找用法 141
5.16 設置查找用法的過程和範圍 141
5.17 顯示用法 144
5.18 查看在當前文件中的用法 144
5.19 在文件中高亮顯示字符 145
5.20 最近查找 145
5.21 Macros (宏) 146
第6章 視圖 148
6.1 工具窗口 148
6.1.1 顯示/隱藏工具窗口 148
6.1.2 快速切換工具窗口 149
6.2 工作颱管理 150
6.3 查看定義 151
6.4 查看同胞元素 152
6.5 查看文檔 152
6.6 查看方法的參數信息 154
6.7 查看錶達式的類型 155
6.8 查看上下文信息 155
6.9 查看源碼 156
6.10 查看最近打開過的文件 156
6.11 查看最近改動過的文件 156
6.12 查看最近的改動 156
6.13 對比任意文件 158
6.14 將選中的文件和正在編輯的文件進行對比 160
6.15 將選中的文件和剪切闆上的內容進行對比 160
6.16 切換編輯器配色方案 161
6.16.1 快速切換編輯器配色方案 161
6.16.2 切換編輯器配色方案 161
6.17 切換代碼風格 161
6.18 切換鍵盤映射 162
6.19 快速切換視圖模式 163
6.20 快速切換主題 164
6.21 設置編輯器是否顯示空格 164
6.22 設置編輯器是否顯示行號 165
6.23 設置編輯器是否顯示縮進嚮導 166
6.24 設置編輯器是否使用自動換行 167
6.25 設置編輯器是否彈齣導入提示 168
6.26 使用演示模式 169
6.27 使用免打擾模式 170
6.28 使用全屏模式 171
第7章 導航 172
7.1 搜索並打開類文件 172
7.2 搜索並打開某個文件 173
7.3 搜索並打開某個文件或方法174
7.4 使用自定義代碼塊 174
7.5 快速跳轉到某一行代碼176
7.6 快速跳轉到光標的曆史位置177
7.7 快速跳轉到編輯過的曆史位置178
7.8 標記書簽 178
7.9 使用助記符標記書簽 179
7.10 管理書簽 179
7.10.1 在書簽管理界麵管理書簽 180
7.10.2 在收藏夾中管理書簽 181
7.11 快速跳轉到導航欄 181
7.12 快速跳轉到聲明 181
7.13 快速跳轉到實現 182
7.14 快速跳轉到類型聲明 182
7.15 快速跳轉到父類 183
7.16 類和測試類之間快速跳轉 184
7.17 查看相關聯的文件 186
7.18 查看文件結構 187
7.19 查看類的層次結構圖 188
7.20 查看方法類型的層次結構 189
7.21 查看方法調用層次結構 190
7.22 快速跳轉到錯誤代碼的位置 190
7.23 在方法間前後跳轉 191
7.24 使用翻頁功能 191
7.25 選擇當前文件在哪裏顯示 192
7.26 光標快速跳轉到編輯器 192
7.27 光標快速跳轉到頁首/頁尾 193
第8章 編碼 194
8.1 覆寫或實現方法 194
8.2 實現接口方法 196
8.3 實現代理方法 196
8.4 生成構造函數 199
8.5 生成Getter和Setter方法 200
8.6 覆寫equals和hashcode方法 200
8.7 覆寫toString方法 201
8.8 插入版權信息 203
8.8.1 插入版權信息 203
8.8.2 配置版權信息 204
8.8.3 共享版權信息配置 207
8.9 提取或刪除代碼 208
8.10 自動補全提示 209
8.11 代碼補全 210
8.12 補全循環擴展詞 212
8.13 展開或摺疊代碼 213
8.13.1 展開或摺疊當前代碼塊 213
8.13.2 展開或摺疊當前代碼塊中的所有子模塊 213
8.13.3 展開和摺疊全部代碼塊 214
8.13.4 展開和摺疊當前文件中的所有注釋 214
8.13.5 指定展開層級 214
8.13.6 展開和摺疊選中區域 215
8.13.7 摺疊代碼片段 215
8.14 插入代碼模闆 215
8.14.1 類中常用的縮寫 215
8.14.2 方法中常用的縮寫 216
8.15 使用代碼模闆包裹代碼 218
8.16 查看和編輯代碼模闆 219
8.17 使用常用代碼模闆包裹代碼 220
8.18 注釋代碼 222
8.19 格式化代碼 222
8.20 自動縮進行 224
8.21 優化導入 224
8.22 重新排列代碼 225
8.23 移動一段代碼 225
8.24 移動一行代碼 226
8.25 操作意圖提示 227
8.26 正則錶達式操作意圖提示 228
第9章 檢查 229
9.1 代碼檢查工具 229
9.2 全麵瞭解Lint 230
9.2.1 Lint是什麼 230
9.2.2 為什麼要用Lint 230
9.2.3 Lint會檢查哪些錯誤 230
9.2.4 Lint工作流程 231
9.2.5 報告中的Issue和Category 232
9.2.6 Lint使用場景 232
9.2.7 如何配置Lint檢查 233
9.2.8 Lint命令行用法介紹 233
9.2.9 Lint命令行用法舉例 235
9.3 執行一次代碼檢查 237
9.4 指定檢查範圍 239
9.4.1 先執行檢查再指定範圍 239
9.4.2 選定範圍再執行檢查 239
9.5 代碼檢查結果及輔助工具240
9.6 詳解代碼檢查結果輔助工具242
9.6.1 重新執行代碼檢查 242
9.6.2 全部展開或摺疊檢查結果 242
9.6.3 在檢查結果中快速上下跳轉 243
9.6.4 自動定位到問題的源碼 243
9.6.5 導齣代碼檢查結果 243
9.6.6 按嚴重程度分組排查問題 244
9.6.7 按目錄分組排查問題 244
9.6.8 過濾已解決的問題 244
9.6.9 高亮顯示不同和僅顯示不同 244
9.6.10 快速設置245
9.6.11 快速解決問題 245
9.6.12 對檢查齣的問題進行操作 246
9.7 禁用和啓用某項檢查 247
9.7.1 在檢查結果中禁用和啓用某項檢查 247
9.7.2 在偏好設置中禁用和啓用某項檢查 248
9.8 忽略檢查 249
9.9 在指定範圍內執行某項檢查252
9.10 解決檢查齣的問題 252
9.11 管理代碼檢查配置文件 253
9.12 配置代碼檢查規則 255
9.13 Android類目的所有檢查項 259
9.14 Android Lint類目的檢查項 260
9.15 在lint.xml文件中配置Lint檢查 264
9.16 在Gradle中配置Lint檢查 264
9.17 使用Gradle執行Lint檢查 267
9.17.1 命令行執行Lint檢查 267
9.17.2 Gradle工具窗口執行Lint檢查 267
9.18 在Java和XML源碼中配置Lint檢查 267
9.18.1 在Java源碼中配置Lint檢查 267
9.18.2 在XML源碼中配置Lint檢查 268
9.19 代碼清理 269
9.20 通過名字來指定代碼檢查項 271
9.21 配置當前文件自動檢查的規則 272
9.22 導入並查看離綫檢查結果 274
9.23 自動添加是否可為空注解 275
9.24 分析依賴 276
9.25 分析反嚮依賴 277
9.26 分析模塊依賴 278
9.27 分析循環依賴 279
9.28 分析數據流 279
9.29 分析堆棧信息 280
第10章 重構 282
10.1 重命名 282
10.1.1 重命名類 282
10.1.2 重命名變量 283
10.1.3 重命名文件 283
10.2 更改方法簽名 284
10.3 遷移變量類型 284
10.4 轉成靜態方法 286
10.5 靜態方法轉為實例方法 287
10.6 移動類 288
10.7 移動靜態方法 289
10.8 移動靜態字段 290
10.9 復製 291
10.10 安全刪除 291
10.11 提取變量 294
10.12 提取常量 295
10.13 提取字段 296
10.14 提取參數 298
10.15 提取函數式參數 300
10.16 提取參數對象 301
10.17 提取方法 303
10.18 提取方法對象 304
10.19 提取委托 304
10.20 提取接口 306
10.21 提取父類 307
10.22 內聯方法 309
10.23 內聯臨時變量 310
10.24 查找並替換重復代碼 311
10.25 反轉布爾值 312
10.26 把成員拉到父類 313
10.27 把成員推到子類 314
10.28 盡可能使用接口 316
10.29 使用委托替換繼承 318
10.30 移除中間人 321
10.31 包裝方法返迴值 323
10.32 將匿名類轉成內部類 325
10.33 封裝字段 326
10.34 使用查詢替換臨時變量 327
10.35 使用工廠方法替換構造方法 329
10.36 使用構建器替換構造方法 330
10.37 泛型化 332
10.38 國際化 333
第11章 構建 335
11.1 認識Gradle 335
11.1.1 Gradle是什麼 335
11.1.2 Gradle中依賴的倉庫 336
11.2 配置Gradle環境 338
11.3 Gradle Wrapper 339
11.4 查看和執行Gradle任務 340
11.4.1 查看當前項目支持的Gradle任務 340
11.4.2 執行Gradle任務 342
11.4.3 常用Gradle任務 342
11.4.4 Gradle工具窗口 343
11.5 構建項目和模塊 345
11.5.1 編譯項目 345
11.5.2 編譯模塊 346
11.5.3 設置自動編譯項目 347
11.5.4 重新構建項目 347
11.5.5 Make Project與Rebuild Project的區彆 348
11.5.6 清理項目 348
11.6 Gradle Script 348
11.6.1 Gradlew配置文件gradle-wrapper.properties 349
11.6.2 項目全局配置文件settings.gradle 350
11.6.3 本地屬性配置文件local.properties 350
11.6.4 Gradle配置文件gradle.properties 351
11.6.5 代碼混淆規則配置文件proguard-rules.pro 351
11.6.6 項目構建配置文件build.gradle 354
11.6.7 模塊構建配置文件build.gradle 355
11.7 在項目結構中配置模塊構建 357
11.7.1 配置應用程序屬性 357
11.7.2 配置應用程序簽名 358
11.7.3 配置應用程序特性 359
11.7.4 配置應用程序構建類型 361
11.7.5 配置應用程序依賴 364
11.8 簽名和打包 365
11.8.1 創建簽名證書 365
11.8.2 生成簽名的APK 366
11.8.3 自動打包和簽名 370
11.8.4 混淆打包 371
11.8.5 多渠道打包 372
11.9 配置開發者服務 377
第12章 運行和調試 378
12.1 運行和調試配置 378
12.1.1 運行和調試配置 378
12.1.2 Android應用程序配置 379
12.2 運行應用程序 383
12.3 調試應用程序 384
12.4 斷點 388
12.4.1 行斷點 388
12.4.2 方法斷點 388
12.4.3 字段觀察點 389
12.4.4 條件斷點 390
12.4.5 臨時斷點 390
12.4.6 異常斷點 391
12.4.7 日誌斷點 391
12.4.8 禁用斷點 392
12.4.9 斷點設置 392
12.5 幀調試窗口 393
12.6 變量調試窗口 394
12.7 監視窗口 397
12.7.1 添加變量或錶達式到監視窗口 398
12.7.2 快捷工具 399
12.8 調試控製工具 399
12.9 步進調試工具 403
12.10 計算錶達式 405
12.10.1 在堆棧幀中計算錶達式或代碼片段 405
12.10.2 計算任意錶達式 407
12.10.3 快速計算錶達式的值 407
12.10.4 選中錶達式立即顯示錶達式的值 408
12.11 關聯調試到Android進程 408
12.12 配置和運行單元測試 409
12.12.1 配置和運行本地單元測試 409
12.12.2 使用命令行運行單元測試 412
12.12.3 配置Android單元測試 412
第13章 工具 414
13.1 任務 414
13.1.1 任務介紹和配置 414
13.1.2 打開任務 417
13.1.3 創建新任務 418
13.1.4 任務變更列錶 419
13.1.5 切換/關閉任務 420
13.1.6 管理上下文 420
13.2 JavaDoc 421
13.2.1 配置JavaDoc 421
13.2.2 生成JavaDoc 422
13.3 將當前文件保存為模闆 424
13.4 IDE Scripting Console 425
13.5 管理Android SDK 425
13.5.1 管理Android SDK平颱 426
13.5.2 管理SDK開發工具和更新站點 428
13.6 管理Android模擬器 429
13.6.1 認識模擬器 429
13.6.2 創建模擬器 430
13.6.3 啓動模擬器 431
13.7 即時運行 433
13.8 Android監視器 436
13.9 截圖 440
13.10 錄像 440
13.11 捕獲係統信息 441
13.12 布局解析 443
13.13 Logcat監視器 445
13.14 內存監視器 450
13.14.1 Dump Java Heap 452
13.14.2 Allocation Tracking 456
13.15 CPU監視器 458
13.16 網絡監視器 460
13.17 GPU監視器 460
13.18 APK分析器 461
13.19 主題編輯器 462
第14章 版本控製 466
14.1 版本控製係統 466
14.2 Git偏好設置 469
14.3 配置GitHub賬戶信息 470
14.4 從GitHub剋隆代碼 470
14.5 將本地項目共享到GitHub 471
14.6 查看本地變更曆史 472
14.7 Git添加文件 474
14.8 Git提交變更 475
14.9 Git文件逐行追溯 476
14.10 顯示當前修訂版本 477
14.11 Git文件比較 478
14.12 Git撤銷操作 479
14.13 Git版本迴退 480
14.14 Git查看提交曆史 481
14.15 Git分支管理 483
14.16 Git創建標簽 486
14.17 Git閤並分支 487
14.18 解決Git閤並中的衝突 488
14.19 Git使用Rebase閤並分支 489
14.20 Git暫存/恢復暫存變更 494
14.21 Git獲取最新內容 496
14.22 Git閤並最新內容 497
14.23 Git更新項目 497
14.24 刷新文件狀態 499
14.25 Git補丁 500
14.26 Git擱置變更 501
14.27 查看Git項目的提交信息 502
第15章 窗口 504
15.1 最小化和最大化窗口 504
15.2 保存和恢復窗口布局 504
15.3 工具窗口的顯示和隱藏 505
15.4 工具窗口的隱藏技巧 506
15.5 工具窗口調整技巧 507
15.6 移動工具窗口的位置 508
15.7 工具窗口的查看模式 509
15.8 編輯器標簽設置 512
15.9 快速切換編輯器標簽 513
15.10 關閉編輯器標簽 514
15.11 管理編輯器標簽 514
15.12 標簽顯示位置 515
15.13 拆分編輯器窗口 516
15.14 多個項目之間切換 517
第16章 偏好設置 518
16.1 外觀與行為 518
16.1.1 設置工具提示的延遲時間 518
16.1.2 設置在狀態欄顯示內存狀態 519
16.1.3 對菜單選項和工具欄的工具進行增/刪改 519
16.2 係統設置 519
16.3 鍵盤映射 522
16.4 編輯器常規設置 523
16.4.1 設置單擊編輯器光標定位在一行的結尾或定位在單擊的位置 523
16.4.2 設置鼠標懸停在元素上會顯示文檔提示 523
16.4.3 設置是否自動換行 524
16.4.4 設置使用command 鼠標控製代碼的縮放 526
16.4.5 開啓使用駝峰單詞 526
16.4.6 關閉單詞拼寫檢查 527
16.4.7 設置代碼摺疊規則 527
16.5 設置自動導入 528
16.5.1 設置粘貼時自動導入包 528
16.5.2 設置自動導入需要的包 528
16.5.3 設置是否彈齣導入提示 529
16.6 編輯器外觀 530
16.6.1 設置編輯器一直顯示行號 530
16.6.2 設置編輯器顯示方法分隔符 530
16.6.3 設置編輯器顯示空格 530
16.6.4 設置編輯器顯示縮進嚮導 531
16.7 代碼補全 531
16.7.1 設置自動補全時是否區分大小寫 531
16.7.2 加快自動彈齣代碼補全提示的速度 532
16.7.3 關閉自動彈齣代碼補全提示 533
16.7.4 設置查看方法參數信息的時候顯示方法簽名 533
16.8 文件標簽 534
16.8.1 設置用星號標記修改過的文件標簽 534
16.8.2 設置打開的文件標簽可以多行顯示 534
16.8.3 設置文件標簽的顯示位置 535
16.8.4 設置文件標簽超過一定數量時的關閉規則 535
16.9 編輯器顔色 536
16.9.1 設置是否顯示條標和條標的顯示顔色 536
16.9.2 設置控製颱的顔色 537
16.9.3 設置控製颱的字體 538
16.9.4 自定義代碼的顔色 539
16.10 代碼風格 541
16.10.1 設置Java注釋按縮進顯示 541
16.10.2 設置語句不要都顯示在一行 541
16.10.3 設置Java簡單的類閤並為一行 542
16.10.4 設置Java字段和變量列對齊 542
16.10.5 設置自動生成字段名稱時添加前綴 542
16.11 文件和代碼模闆 543
16.11.1 設置新建文件的注釋模闆 543
16.11.2 模闆中內置的變量 544
16.11.3 設置新建類文件模闆 544
16.11.4 設置IDE和項目的編碼 545
16.11.5 對動態模闆進行增刪改查 545
16.11.6 設置展開代碼的按鍵 547
16.11.7 給一個文件類型添加匹配規則 547
16.11.8 添加一個自定義的文件類型 547
16.11.9 設置忽略某類文件或文件夾 548
16.12 插件 549
16.12.1 安裝插件 550
16.12.2 禁用插件 553
16.12.3 卸載插件 554
16.12.4 常用插件 555
16.13 編譯和構建 556
16.13.1 設置Android Studio的內存參數 556
16.13.2 設置自動編譯項目 556
16.13.3 設置並行編譯 557
16.13.4 調整編譯內存大小 557
附錄 Android Studio重要版本發布時間綫 559
參考資料 560
· · · · · · (
收起)