第1章初識AndroidStudio11.1什么是AndroidStudio1
1.1.1AndroidStudio簡介1
1.1.2系統要求2
1.1.3下載地址2
1.1.4為什么要用AndroidStudio2
1.2AndroidStudio的特點3
1.3macOS環境配置7
1.3.1配置JDK7
1.3.2下載AndroidStudio8
1.3.3配置Android的環境變量8
1.4Windows環境配置9
1.4.1配置JDK9
1.4.2配置AndroidStudio10
1.4.3配置Android的環境變量11
1.5Linux環境配置12
1.5.1配置JDK12
1.5.2配置AndroidStudio12
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配置AndroidStudio更新通道23
1.10.1在偏好設置中配置更新通道23
1.10.2在檢測結果對話框中配置更新通道23
1.10.3單獨下載最近更新的版本23
1.10.4四種版本的區別24
1.11在AndroidStudio中使用代理25
1.12認識偏好設置26
1.12.1基礎配置27
1.12.2個性化配置28
1.13認識工作臺30
1.14認識工具窗口33
第2章項目與模塊37
2.1AndroidStudio的項目結構37
2.1.1項目和模塊37
2.1.2基本的項目結構38
2.2導入項目和模塊40
2.2.1導入AndroidStudio項目40
2.2.2導入Eclipse項目40
2.2.3導入Android示例代碼44
2.2.4導入模塊44
2.2.5導入.JAR/.AAR46
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創建Activity61
2.7.1Activity模板列表61
2.7.2ActivityGallery61
2.7.3新建一個Activity62
2.8創建Fragment文件64
2.9創建Service文件65
2.9.1創建Service文件66
2.9.2創建IntentService文件66
2.10創建自定義組件67
2.11創建AppWidget69
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創建ResourceBundle文件84
第3章布局86
3.1認識布局86
3.1.1Android中定義布局的方法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導出到HTML112
4.3.3切換文件編碼方式113
4.3.4切換行分隔符113
4.3.5使文件只讀114
4.3.6使用省電模式114
4.3.7打開文件/文件夾所在磁盤目錄114
4.4AndroidStudio管理115
4.4.1隱藏/顯示/退出AndroidStudio115
4.4.2清除緩存/重啟AndroidStudio116
4.5收藏夾116
4.5.1添加到收藏夾116
4.5.2管理收藏夾118
4.6TODO119
4.6.1添加TODO任務119
4.6.2查看TODO任務120
4.6.3TODO工具窗口常用操作120
4.6.4設置TODO122
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.21Macros(宏)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全面了解Lint230
9.2.1Lint是什么230
9.2.2為什么要用Lint230
9.2.3Lint會檢查哪些錯誤230
9.2.4Lint工作流程231
9.2.5報告中的Issue和Category232
9.2.6Lint使用場景232
9.2.7如何配置Lint檢查233
9.2.8Lint命令行用法介紹233
9.2.9Lint命令行用法舉例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.13Android類目的所有檢查項259
9.14AndroidLint類目的檢查項260
9.15在lint.xml文件中配置Lint檢查264
9.16在Gradle中配置Lint檢查264
9.17使用Gradle執行Lint檢查267
9.17.1命令行執行Lint檢查267
9.17.2Gradle工具窗口執行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認識Gradle335
11.1.1Gradle是什么335
11.1.2Gradle中依賴的倉庫336
11.2配置Gradle環境338
11.3GradleWrapper339
11.4查看和執行Gradle任務340
11.4.1查看當前項目支持的Gradle任務340
11.4.2執行Gradle任務342
11.4.3常用Gradle任務342
11.4.4Gradle工具窗口343
11.5構建項目和模塊345
11.5.1編譯項目345
11.5.2編譯模塊346
11.5.3設置自動編譯項目347
11.5.4重新構建項目347
11.5.5MakeProject與RebuildProject的區別348
11.5.6清理項目348
11.6GradleScript348
11.6.1Gradlew配置文件gradle-wrapper.properties349
11.6.2項目全局配置文件settings.gradle350
11.6.3本地屬性配置文件local.properties350
11.6.4Gradle配置文件gradle.properties351
11.6.5代碼混淆規則配置文件proguard-rules.pro351
11.6.6項目構建配置文件build.gradle354
11.6.7模塊構建配置文件build.gradle355
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生成簽名的APK366
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.2Android應用程序配置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.2JavaDoc421
13.2.1配置JavaDoc421
13.2.2生成JavaDoc422
13.3將當前文件保存為模板424
13.4IDEScriptingConsole425
13.5管理AndroidSDK425
13.5.1管理AndroidSDK平臺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.8Android監視器436
13.9截圖440
13.10錄像440
13.11捕獲系統信息441
13.12布局解析443
13.13Logcat監視器445
13.14內存監視器450
13.14.1DumpJavaHeap452
13.14.2AllocationTracking456
13.15CPU監視器458
13.16網絡監視器460
13.17GPU監視器460
13.18APK分析器461
13.19主題編輯器462
第14章版本控制466
14.1版本控制系統466
14.2Git偏好設置469
14.3配置GitHub賬戶信息470
14.4從GitHub克隆代碼470
14.5將本地項目共享到GitHub471
14.6查看本地變更歷史472
14.7Git添加文件474
14.8Git提交變更475
14.9Git文件逐行追溯476
14.10顯示當前修訂版本477
14.11Git文件比較478
14.12Git撤銷操作479
14.13Git版本回退480
14.14Git查看提交歷史481
14.15Git分支管理483
14.16Git創建標簽486
14.17Git合并分支487
14.18解決Git合并中的沖突488
14.19Git使用Rebase合并分支489
14.20Git暫存/恢復暫存變更494
14.21Git獲取最新內容496
14.22Git合并最新內容497
14.23Git更新項目497
14.24刷新文件狀態499
14.25Git補丁500
14.26Git擱置變更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設置AndroidStudio的內存參數556
16.13.2設置自動編譯項目556
16.13.3設置并行編譯557
16.13.4調整編譯內存大小557
附錄AndroidStudio重要版本發布時間線559
參考資料560