《Android群英傳:神兵利器》,本書作者徐宜生,由電子工業出版社於2016年9月出版。
基本介紹
- 書名:Android群英傳:神兵利器
- 作者:徐宜生
- ISBN:9787121296024
- 頁數:412頁
- 定價:79.00元
- 出版社:電子工業出版社
- 出版時間:2016-9
內容簡介,作者簡介,書籍目錄,
內容簡介
《Android群英傳:神兵利器》以通俗易懂的語言介紹了Android開發的工具使用。《Android群英傳:神兵利器》共分為7章。第1章主要講解如何搭建一個優雅、令人愉悅的開發環境。第2章主要講解協同開發最重要的工具Git。第3章主要講解Android Studio的一些不為人知的使用技巧。第4章主要講解Android最新的編譯工具Gradle的使用技巧。第5章主要講解SDK和開發者選項中提供的工具的使用方式。第6章主要講解Android提供的一些性能最佳化的工具及其使用技巧。第7章主要講解個人開發者和團隊開發者在學習、工作中經常使用的一些工具。
《Android群英傳:神兵利器》適用於各個層次的Android開發者,不論是初出茅廬的開發者還是資深的開發者。工具的使用永遠是一門講不完的學問,筆者希望拋磚引玉,讓開發者能夠駕馭好各種工具,為己所用。
作者簡介
徐宜生
曾就職於上海TCL通訊,從事Alcatel(阿爾卡特)Android手機系統的定製工作,目前就職於上海滬江網Android開發部RD項目組,負責滬江App的功能預研。真正的一線開發人員。活躍在CSDN技術部落格的年輕工程師,榮獲CSDN認證專家,文章風格幽默風趣,單篇文章有上萬的閱讀量,深受年輕程式設計師的喜愛。在慕課網上開設課程,有數萬名學員聽課,參與討論。
書籍目錄
第1章 程式設計師小窩——搭建高效的開發環境 1
1.1 搭建高效的開發環境之作業系統 1
1.2 搭建開發環境之高效配置 4
基本環境配置 5
基本開發工具 7
1.3 搭建程式設計師的部落格平台 30
開發者為什麼要寫作 30
寫作平台 31
第三方部落格平台 31
自建部落格平台 32
開發論壇 41
1.4 Geek PPT Presentation 43
impress.js 43
Strut 44
reveal.js 44
Slides 45
1.5 開發文檔 46
Markdown 46
項目文檔生成器 50
第2章 版本控制神器——Git 53
2.1 Git的前世今生 53
Git是什麼 54
Git安裝與配置 55
2.2 創建Git倉庫 58
Git init 58
Git clone 58
2.3 提交修改 58
add && commit 59
追加修改 60
查看代碼倉庫狀態 60
追溯版本歷史 62
2.4 工作區與暫存區 64
Git操作區域 64
2.5 Git回退 65
checkout && reset 65
回退版本 67
2.6 操作歷史 68
2.7 Git檔案操作 69
git rm 69
檔案暫存 70
2.8 遠程倉庫 70
身份認證 71
同步協作 73
Clone遠程倉庫 76
2.9 分支管理 77
創建分支 77
查看分支 78
合併分支 78
刪除分支 79
查看遠程分支 80
推送分支 80
分支管理思想 80
2.10 Git圖解 81
2.11 Tag 82
創建Tag 82
創建帶標籤的Tag 82
查看Tag 82
刪除標籤 83
推送Tag到遠程 83
刪除遠程Tag 83
2.12 Git圖形化工具 84
Git for Windows 84
Github Desktop 84
SourceTree 85
Android Studio 85
2.13 Git學習資料 86
Git練習 87
第3章 Android Studio奇技淫巧 90
3.1 Android Studio使用初探 90
Project面板 91
Structure面板 92
Android Monitor 93
Keymap 93
Tip of the Day 94
快速查找 95
Search Action 96
演示模式 97
3.2 Android Studio使用進階 98
操作與導航 98
快速重構 115
代碼模板 122
內置模板 122
自定義代碼注釋模板 124
代碼分析 132
在Android Studio中進行版本管理 135
3.3 Android Studio新功能 139
項目模板 139
ThemeEditor 140
Image Asset && Vector Asset 140
Android Monitor 143
Instant Run 144
Productivity Guide 145
3.4 Android Studio外掛程式 146
Ignore 146
自動生成代碼類外掛程式 148
主題外掛程式 149
3.5 Android Studio資源網站 151
Android Studio中文社區 151
Android Studio問答社區 151
第4章 與Gradle的愛恨情仇 153
4.1 如何學習Gradle 154
4.2 Gradle初探 154
項目全局build.gradle 156
Module build.gradle 157
local.properties 159
Gradle Task 160
4.3 Gradle進階 162
更改項目結構 162
構建全局配置 165
構建defaultConfig 166
構建buildTypes 167
構建signingConfigs 170
生成簽名 170
Android領域中的可選配置 174
構建Proguard 175
Gradle動態參數配置 176
System.properties方式 176
多渠道打包 179
腳本最佳化 180
生成重命名包 181
為不同版本添加不同代碼 182
4.4 Gradle多項目依賴 185
jar包依賴 185
SO庫依賴 188
本地庫項目依賴 189
遠程倉庫依賴 193
本地aar依賴 196
使用Gradle上傳aar到Maven庫 198
4.5 Gradle依賴管理 199
Gradle依賴庫快取 199
利用Gradle的通知機制 199
利用Gradle的依賴檢查 200
Gradle依賴傳遞 200
Gradle依賴統一管理 201
4.6 Gradle使用技巧 202
生成Gradle編譯腳本 202
Gradle peer not authenticated 203
Gradle性能檢測 203
Gradle加速 206
增加編譯記憶體 207
Gradle調用終端指令 207
使用Gradle精簡資源 207
清除Gradle快取 208
使用Gradle本地快取 209
Gradle版本問題導致的編譯錯誤 209
Gradle資源衝突 210
4.7 Gradle自定義外掛程式 211
構建默認外掛程式 211
構建自定義外掛程式 216
4.8 Gradle思考 219
Grovvy初探 219
Gradle項目架構 224
Gradle生命周期 225
4.9 使用Android Studio的圖形化界面 228
第5章 深藏功與名的開發者工具 230
5.1 AAPT 230
AAPT初探 230
AAPT基本使用方法 231
查看AAPT命令格式 235
AAPT原始碼 239
5.2 Lint 240
5.3 ADB指令 241
Help指令 242
無線調試 242
截圖與錄屏 243
幀率分析 244
dumpsys 245
Logcat 246
Bugreport 248
5.4 Android Device Monitor 250
5.5 9Patch工具 252
5.6 Hierarchy Viewer 255
在真機上使用Hierarchy Viewer 255
使用Hierarchy Viewer分析頁面 256
5.7 UI Automator Viewer 257
5.8 DDMLib 258
其他SDK工具 258
5.9 開發者選項 259
Process Stats 259
Show Touches && Pointer Location 260
Show Layout Bounds 260
Animation Scale 261
Simulate Secondary Displays 262
Debug GPU Overdraw 262
Show CPU Usage 264
Profile GPU Rending 264
Strick Mode 265
不保留活動 266
第6章 App背後的故事——性能檢測與分析工具 267
6.1 性能最佳化之前 267
6.2 Google的技術指導 269
6.3 UI性能分析 271
16ms黃金準則 271
Android系統對UI的提升 271
布局核心準則 271
RelativeLayout VS LinearLayout 272
HierarchyViewer 272
Merge與ViewStub 273
圖形重繪Overdraw 273
Tracer for OpenGL 276
GPUProfiler 281
Profile GPU Rendering 281
Framestats 283
Logcat 283
traces.txt 284
Android Studio GPU Monitor 285
Systrace 285
CPU區域 290
SurfaceFlinger 291
套用區域 291
Alert 294
6.4 Traceview 294
In Source Code 295
In DDMS 296
Traceview分析 296
圖形列表 297
詳細列表 297
6.5 套用啟動時間計算 300
啟動時間定義 300
ADB計算啟動時間 300
使用相機分析 301
6.6 記憶體探究 301
記憶體區分 302
系統記憶體分析工具 302
獲取記憶體信息 306
GC系統 307
ActivityManager.MemoryInfo 308
Debug.MemoryInfo 310
Runtime 310
獲取更多記憶體 312
6.7 系統記憶體警告 313
6.8 onLowMemory 313
ComponentCallbacks 313
onTrimMemory 314
6.9 記憶體泄漏檢測 315
6.10 Logcat 315
6.11 Dump Heap 316
6.12 Allocation Tracker 318
In Android Studio 318
In DDMS 320
6.13 Android Studio Memory Monitor 321
6.14 記憶體泄漏分析 322
6.15 Memory Analysis Tool (MAT) 322
準備Dump Heap檔案 324
分析 325
6.16 LeakCanary 333
引用LeakCanary 333
初始化LeakCanary 333
檢測 333
6.17 CPU Performance 335
6.18 Top 336
總覽 337
詳細 337
6.19 Show CPU Usage 338
6.20 Android Studio CPU Monitor 338
6.21 Method Tracing 339
6.22 BatteryPerformance 340
電量消耗計算 340
耗電元兇 341
電量分析 341
6.23 綜合測試工具 346
6.24 Android Device Monitor 347
Threads 348
System Information 349
6.25 高通性能工具 350
Trepn Profiler 350
App Tune-up Kit 354
6.26 雲測平台 356
第7章 一個人的寂寞與一群人的狂歡 359
7.1 如何解決問題 360
Chrome 360
Google搜尋 362
Github 363
Stackoverflow 364
代碼檢索工具 365
7.2 如何簡化開發 371
移動後端服務 371
雲存儲服務 371
數據分析服務 372
雲測試服務 372
Proguard自動生成工具 372
gitignore自動生成工具 373
7.3 如何學習 374
思維導圖 374
explainshell 376
Tldr 377
vim-adventures 377
7.4 如何演示 378
手機投視工具 378
錄製Gif 379
MP4轉Gif 380
7.5 如何協作 381
Git 381
Code Review 381
Gitlab 383
Maven伺服器 384
自動化測試 385
持續集成與自動化 387
Bug管理 388
新員工指南 390
7.6 如何設計 390
AndroidAssetStudio 391
Shape生成器 391
ICON資源 392
設計資源 394
AngryTools 394
MateriaPalette 396
Google Design Spec 396
附錄A AndroidStudio快捷鍵 398
1.1 搭建高效的開發環境之作業系統 1
1.2 搭建開發環境之高效配置 4
基本環境配置 5
基本開發工具 7
1.3 搭建程式設計師的部落格平台 30
開發者為什麼要寫作 30
寫作平台 31
第三方部落格平台 31
自建部落格平台 32
開發論壇 41
1.4 Geek PPT Presentation 43
impress.js 43
Strut 44
reveal.js 44
Slides 45
1.5 開發文檔 46
Markdown 46
項目文檔生成器 50
第2章 版本控制神器——Git 53
2.1 Git的前世今生 53
Git是什麼 54
Git安裝與配置 55
2.2 創建Git倉庫 58
Git init 58
Git clone 58
2.3 提交修改 58
add && commit 59
追加修改 60
查看代碼倉庫狀態 60
追溯版本歷史 62
2.4 工作區與暫存區 64
Git操作區域 64
2.5 Git回退 65
checkout && reset 65
回退版本 67
2.6 操作歷史 68
2.7 Git檔案操作 69
git rm 69
檔案暫存 70
2.8 遠程倉庫 70
身份認證 71
同步協作 73
Clone遠程倉庫 76
2.9 分支管理 77
創建分支 77
查看分支 78
合併分支 78
刪除分支 79
查看遠程分支 80
推送分支 80
分支管理思想 80
2.10 Git圖解 81
2.11 Tag 82
創建Tag 82
創建帶標籤的Tag 82
查看Tag 82
刪除標籤 83
推送Tag到遠程 83
刪除遠程Tag 83
2.12 Git圖形化工具 84
Git for Windows 84
Github Desktop 84
SourceTree 85
Android Studio 85
2.13 Git學習資料 86
Git練習 87
第3章 Android Studio奇技淫巧 90
3.1 Android Studio使用初探 90
Project面板 91
Structure面板 92
Android Monitor 93
Keymap 93
Tip of the Day 94
快速查找 95
Search Action 96
演示模式 97
3.2 Android Studio使用進階 98
操作與導航 98
快速重構 115
代碼模板 122
內置模板 122
自定義代碼注釋模板 124
代碼分析 132
在Android Studio中進行版本管理 135
3.3 Android Studio新功能 139
項目模板 139
ThemeEditor 140
Image Asset && Vector Asset 140
Android Monitor 143
Instant Run 144
Productivity Guide 145
3.4 Android Studio外掛程式 146
Ignore 146
自動生成代碼類外掛程式 148
主題外掛程式 149
3.5 Android Studio資源網站 151
Android Studio中文社區 151
Android Studio問答社區 151
第4章 與Gradle的愛恨情仇 153
4.1 如何學習Gradle 154
4.2 Gradle初探 154
項目全局build.gradle 156
Module build.gradle 157
local.properties 159
Gradle Task 160
4.3 Gradle進階 162
更改項目結構 162
構建全局配置 165
構建defaultConfig 166
構建buildTypes 167
構建signingConfigs 170
生成簽名 170
Android領域中的可選配置 174
構建Proguard 175
Gradle動態參數配置 176
System.properties方式 176
多渠道打包 179
腳本最佳化 180
生成重命名包 181
為不同版本添加不同代碼 182
4.4 Gradle多項目依賴 185
jar包依賴 185
SO庫依賴 188
本地庫項目依賴 189
遠程倉庫依賴 193
本地aar依賴 196
使用Gradle上傳aar到Maven庫 198
4.5 Gradle依賴管理 199
Gradle依賴庫快取 199
利用Gradle的通知機制 199
利用Gradle的依賴檢查 200
Gradle依賴傳遞 200
Gradle依賴統一管理 201
4.6 Gradle使用技巧 202
生成Gradle編譯腳本 202
Gradle peer not authenticated 203
Gradle性能檢測 203
Gradle加速 206
增加編譯記憶體 207
Gradle調用終端指令 207
使用Gradle精簡資源 207
清除Gradle快取 208
使用Gradle本地快取 209
Gradle版本問題導致的編譯錯誤 209
Gradle資源衝突 210
4.7 Gradle自定義外掛程式 211
構建默認外掛程式 211
構建自定義外掛程式 216
4.8 Gradle思考 219
Grovvy初探 219
Gradle項目架構 224
Gradle生命周期 225
4.9 使用Android Studio的圖形化界面 228
第5章 深藏功與名的開發者工具 230
5.1 AAPT 230
AAPT初探 230
AAPT基本使用方法 231
查看AAPT命令格式 235
AAPT原始碼 239
5.2 Lint 240
5.3 ADB指令 241
Help指令 242
無線調試 242
截圖與錄屏 243
幀率分析 244
dumpsys 245
Logcat 246
Bugreport 248
5.4 Android Device Monitor 250
5.5 9Patch工具 252
5.6 Hierarchy Viewer 255
在真機上使用Hierarchy Viewer 255
使用Hierarchy Viewer分析頁面 256
5.7 UI Automator Viewer 257
5.8 DDMLib 258
其他SDK工具 258
5.9 開發者選項 259
Process Stats 259
Show Touches && Pointer Location 260
Show Layout Bounds 260
Animation Scale 261
Simulate Secondary Displays 262
Debug GPU Overdraw 262
Show CPU Usage 264
Profile GPU Rending 264
Strick Mode 265
不保留活動 266
第6章 App背後的故事——性能檢測與分析工具 267
6.1 性能最佳化之前 267
6.2 Google的技術指導 269
6.3 UI性能分析 271
16ms黃金準則 271
Android系統對UI的提升 271
布局核心準則 271
RelativeLayout VS LinearLayout 272
HierarchyViewer 272
Merge與ViewStub 273
圖形重繪Overdraw 273
Tracer for OpenGL 276
GPUProfiler 281
Profile GPU Rendering 281
Framestats 283
Logcat 283
traces.txt 284
Android Studio GPU Monitor 285
Systrace 285
CPU區域 290
SurfaceFlinger 291
套用區域 291
Alert 294
6.4 Traceview 294
In Source Code 295
In DDMS 296
Traceview分析 296
圖形列表 297
詳細列表 297
6.5 套用啟動時間計算 300
啟動時間定義 300
ADB計算啟動時間 300
使用相機分析 301
6.6 記憶體探究 301
記憶體區分 302
系統記憶體分析工具 302
獲取記憶體信息 306
GC系統 307
ActivityManager.MemoryInfo 308
Debug.MemoryInfo 310
Runtime 310
獲取更多記憶體 312
6.7 系統記憶體警告 313
6.8 onLowMemory 313
ComponentCallbacks 313
onTrimMemory 314
6.9 記憶體泄漏檢測 315
6.10 Logcat 315
6.11 Dump Heap 316
6.12 Allocation Tracker 318
In Android Studio 318
In DDMS 320
6.13 Android Studio Memory Monitor 321
6.14 記憶體泄漏分析 322
6.15 Memory Analysis Tool (MAT) 322
準備Dump Heap檔案 324
分析 325
6.16 LeakCanary 333
引用LeakCanary 333
初始化LeakCanary 333
檢測 333
6.17 CPU Performance 335
6.18 Top 336
總覽 337
詳細 337
6.19 Show CPU Usage 338
6.20 Android Studio CPU Monitor 338
6.21 Method Tracing 339
6.22 BatteryPerformance 340
電量消耗計算 340
耗電元兇 341
電量分析 341
6.23 綜合測試工具 346
6.24 Android Device Monitor 347
Threads 348
System Information 349
6.25 高通性能工具 350
Trepn Profiler 350
App Tune-up Kit 354
6.26 雲測平台 356
第7章 一個人的寂寞與一群人的狂歡 359
7.1 如何解決問題 360
Chrome 360
Google搜尋 362
Github 363
Stackoverflow 364
代碼檢索工具 365
7.2 如何簡化開發 371
移動後端服務 371
雲存儲服務 371
數據分析服務 372
雲測試服務 372
Proguard自動生成工具 372
gitignore自動生成工具 373
7.3 如何學習 374
思維導圖 374
explainshell 376
Tldr 377
vim-adventures 377
7.4 如何演示 378
手機投視工具 378
錄製Gif 379
MP4轉Gif 380
7.5 如何協作 381
Git 381
Code Review 381
Gitlab 383
Maven伺服器 384
自動化測試 385
持續集成與自動化 387
Bug管理 388
新員工指南 390
7.6 如何設計 390
AndroidAssetStudio 391
Shape生成器 391
ICON資源 392
設計資源 394
AngryTools 394
MateriaPalette 396
Google Design Spec 396
附錄A AndroidStudio快捷鍵 398