第1章AndroidStudio入門 11.1在Windows上安裝Java開發
工具包 1
1.1.1在Windows上下載JDK 2
1.1.2在Windows上執行JDK向導 3
1.1.3配置Windows環境變量 4
1.2在Mac上安裝Java開發工具包 7
1.2.1在Mac上下載JDK 7
1.2.2在Mac上執行JDK向導 8
1.2.3在Mac上配置JDK版本 9
1.3安裝AndroidStudio 10
1.4創建第一個項目:HelloWorld 12
1.5使用Android虛擬設備管理器 15
1.6在AVD上運行HelloWorld 16
1.7在Andriod設備上運行HelloWorld 17
1.8小結 19
第2章在AndroidStudio中遨游 21
2.1編輯器 22
2.1.1Editor選項卡 22
2.1.2折疊線 23
2.1.3標記欄 23
2.1.4工具按鈕 23
2.1.5默認布局 24
2.2導航工具窗口 24
2.2.1Project工具窗口 25
2.2.2Stucture工具窗口 26
2.2.3Favorites工具窗口 26
2.2.4TODO工具窗口 27
2.2.5Commander工具窗口 27
2.3主菜單欄 27
2.4工具欄 28
2.5導航欄 28
2.6狀態欄 28
2.7常用操作 29
2.7.1選擇文本 29
2.7.2使用Undo和Redo 29
2.7.3找到最近的文件 30
2.7.4遍歷最近的導航操作 30
2.7.5剪切、復制和粘貼 30
2.8上下文菜單 31
2.9獲取幫助 32
2.10使用鍵盤導航 32
2.10.1SelectIn命令 32
2.10.2Class命令 33
2.10.3File命令 33
2.10.4Line命令 33
2.10.5RelatedFile命令 33
2.10.6LastEditLocation命令 33
2.10.7TypeHierarchy命令 34
2.10.8Declaration命令 34
2.11查找和替換文本 34
2.11.1Find命令 34
2.11.2FindinPath命令 34
2.11.3Replace命令 35
2.11.4ReplaceinPath命令 35
2.12小結 35
第3章在AndroidStudio中編程 37
3.1使用代碼折疊 37
3.2執行代碼補全 39
3.3注釋代碼 42
3.4使用代碼生成 42
3.4.1構造函數 43
3.4.2getter/setter 44
3.4.3重載方法 44
3.4.4toString()方法 45
3.4.5代理方法 46
3.5插入動態模板 47
3.6移動代碼 48
3.7設計代碼風格 50
3.7.1Auto-IndentLines選項 51
3.7.2RearrangeCode選項 51
3.7.3ReformatCode選項 52
3.7.4SurroundWith 52
3.8小結 53
第4章重構代碼 55
4.1重命名 56
4.2修改簽名 57
4.3類型遷移 58
4.4移動 58
4.5復制 59
4.6安全刪除 60
4.7抽取 60
4.7.1抽取變量 61
4.7.2抽取常量 61
4.7.3抽取字段 62
4.7.4抽取參數 62
4.7.5抽取方法 63
4.8高級重構 65
4.8.1下推成員和上拉成員 65
4.8.2使用代理代替繼承 66
4.8.3封裝字段 67
4.8.4封裝方法返回值 68
4.8.5使用工廠方法代替構造函數 69
4.8.6將匿名類轉換為內部類 69
4.9小結 70
第5章備忘錄實驗:第1部分 71
5.1啟動新項目 73
5.2初始化Git倉庫 74
5.3構建用戶界面 77
5.3.1使用可視化設計器 78
5.3.2編輯布局的原始XML 78
5.3.3添加視覺增強效果 83
5.3.4向ListView添加條目 84
5.3.5設置操作欄溢出菜單 86
5.4持久化備忘錄 87
5.4.1數據模型 87
5.4.2SQLiteAPI 89
5.5小結 95
第6章備忘錄實驗:第2部分 97
6.1添加/刪除備忘 97
6.2響應用戶交互 100
6.3提供多選上下文菜單 102
6.3.1兼容較早的SDK 104
6.3.2添加上下文操作模式 105
6.4實現添加、編輯和刪除 107
6.4.1設計自定義對話框 108
6.4.2將設計轉換為代碼 108
6.4.3創建自定義對話框 110
6.4.4添加自定義圖標 113
6.5小結 115
第7章Git入門 117
7.1安裝Git 117
7.2忽略文件 119
7.3添加文件 120
7.4克隆參考App:Reminders 121
7.4.1分叉和克隆 121
7.4.2使用Git日志 124
7.4.3分支 125
7.5在分支上開發 125
7.5.1Git提交和分支 131
7.5.2回退在哪里? 132
7.5.3合并 136
7.5.4Git重置修改歷史 138
7.5.5Git變基 142
7.5.6分離頭部 144
7.5.7相對引用 146
7.5.8在變基時解決沖突 148
7.5.9Git遠端 153
7.6小結 154
第8章設計布局 155
8.1Activity 155
8.2View和ViewGroup 156
8.2.1預覽面板 157
8.2.2寬度和高度 159
8.2.3設計器模式 161
8.2.4幀布局 161
8.2.5線性布局 164
8.2.6相對布局 166
8.2.7嵌套布局 169
8.2.8列表視圖 173
8.3布局設計指導原則 180
8.3.1覆蓋各種顯示尺寸 180
8.3.2組合在一起 183
8.4Fragment 190
8.5小結 200
第9章貨幣實驗:第1部分 201
9.1Currencies規范 201
9.2初始化Git倉庫 205
9.3修改MainActivity的布局 207
9.4定義顏色 211
9.5為布局應用顏色 212
9.6創建并應用樣式 213
9.7創建JSONParser類 216
9.8創建啟動界面 217
9.9獲取JSON格式的活動貨幣代碼 220
9.10啟動MainActivity 223
9.11小結 224
第10章貨幣實驗:第2部分 225
10.1定義MainActivity的成員 225
10.2從bundle中解壓出貨幣代碼 226
10.3創建選項菜單 227
10.4實現選項菜單行為 229
10.5創建spinner_closed布局 230
10.6將mCurrencies綁定到選擇列表 231
10.7將選擇列表行為代理給MainActivity 232
10.8創建偏好管理器 234
10.9根據給定代碼查找位置 235
10.10從貨幣字符串中抽取代碼 236
10.11實現共同偏好 237
10.12按鈕單擊行為 239
10.13保存開發者密鑰 240
10.14獲取開發者密鑰 241
10.15CurrencyConverterTask 242
10.15.1onPreExecute() 246
10.15.2doInBackground() 246
10.15.3onPostExecute() 246
10.16按鈕選擇器 247
10.17啟動圖標 248
10.18小結 249
第11章測試和分析 251
11.1創建新的儀器測試 251
11.1.1定義SetUp()和TearDown()方法 252
11.1.2在MainActivity中定義回調 254
11.1.3定義一些測試方法 255
11.1.4運行儀器測試 257
11.1.5修改Bug 258
11.2使用Monkey 259
11.3使用分析工具 260
11.3.1檢查代碼 260
11.3.2分析依賴 261
11.3.3分析棧軌跡 262
11.4小結 264
第12章調試 265
12.1日志 265
12.1.1使用logcat 266
12.1.2寫入Android日志 268
12.2捕捉Bug! 268
12.2.1使用交互式調試器 272
12.2.2表達式求值 275
12.2.3使用棧軌跡 277
12.2.4探索交互式調試的工具窗口 280
12.2.5使用斷點瀏覽器 281
12.2.6條件斷點 283
12.3小結 285
第13章Gradle 287
13.1Gradle語法 288
13.2IntelliJ核心構建系統 289
13.3Gradle構建概念 290
13.3.1GradleAndroid結構 290
13.3.2項目依賴 291
13.4案例研究:使用Gradle的天氣預報項目 292
13.5Android庫依賴 299
13.5.1Java庫依賴 303
13.5.2第三方庫 311
13.6打開較舊的項目 313
13.7小結 314
第14章更多SDK工具 315
14.1Android設備監視器 315
14.1.1線程監視器 316
14.1.2堆監視器 317
14.1.3分配跟蹤器 318
14.1.4網絡統計 319
14.1.5層次查看器 320
14.2Android監視器 323
14.2.1內存監視器 323
14.2.2方法跟蹤工具 324
14.2.3分配跟蹤器 325
14.2.4屏幕抓取 325
14.3導航編輯器 327
14.3.1設計用戶界面 328
14.3.2導航編輯器初步 328
14.3.3連接Activity 330
14.3.4編輯菜單 331
14.4終端 333
14.4.1查詢設備 333
14.4.2安裝APK 333
14.4.3下載文件 333
14.4.4上傳文件 333
14.4.5端口轉發 334
14.5Google云工具 334
14.5.1創建HelloCloud前端 335
14.5.2創建Java后臺模塊 337
14.5.3組合在一起 339
14.5.4部署到AppEngine 343
14.6小結 346
第15章Android可穿戴設備實驗 347
15.1設置可穿戴設備環境 347
15.1.1安裝設備驅動程序 347
15.1.2設置SDK工具 350
15.1.3設置可穿戴虛擬設備 350
15.1.4設置Android可穿戴設備硬件 353
15.2創建MegaDroid項目 353
15.2.1針對屏幕的優化技術 355
15.2.2構建watch-face服務 356
15.2.3初始化可繪制資源和樣式 358
15.2.4管理手表更新 359
15.2.5繪制界面 363
15.3小結 367
第16章定制AndroidStudio 369
16.1代碼風格 370
16.2外觀、顏色和字體 372
16.3鍵盤映射 374
16.4宏 375
16.5文件和代碼模板 375
16.6菜單和工具欄 377
16.7插件 378
16.8小結 380