買這商品的人也買了...
-
$500Android C++ 高級編程-使用 NDK (Pro Android C++ with the NDK)
-
$390$371 -
$580$199 -
$250Gradle for Android (簡體中文版)
-
$454實戰 Gradle (Gradle in Action)
-
$332巧用 Gradle 構建 Android 應用
-
$390$332 -
$958深度學習
-
$580$458 -
$454Kotlin 實戰 (Kotlin in action)
-
$480$379 -
$650$507 -
$403AWS Lambda 實戰 : 開發事件驅動的無服務器應用程序 (AWS Lambda in Action: Event-Driven Serverless Applications)
-
$500$390 -
$658Android 系統源代碼情景分析, 3/e
-
$534$507 -
$680$578 -
$580$458 -
$560$476 -
$594$564 -
$550$429 -
$680$537 -
$479$455 -
$980$774 -
$834$792
相關主題
商品描述
本書全面講解了Android 下Gradle的詳細用法,並結合實例,讓讀者達到學以致用的目的。本書主要內容如下:
第1章Gradle入門,講解了配置Gradle環境、Gradle Wrapper、Gradle命令行;第2章Groovy基礎,講解了字符串、閉包等;第3章講解了Gradle構建腳本基礎;第4章為Gradle任務;第5章Gradle插件;第6章Java Gradle插件;第7章Android Gradle插件;第8章自定義Android Gradle工程;第9章Android Gradle高級自定義;第10章Android Gradle多項目構建;第11章Android Gradle多渠道構建;第12章Android Gradle測試;第13章Android Gradle NDK支持;第14章Android Gradle持續集成等核心開發知識。
本書講解通俗易懂,適合Android程序員閱讀,也適合作為大專院校相關專業師生的學慣用書和培訓學校的教材。
作者簡介
李帥,網名為飛雪無情,“隨手記”研發部經理,現在隨手記負責Java、Android、iOS、PHP和前端的研發管理。主持翻譯Android官方技術文檔。個人博客:www.flysnow.org。
目錄大綱
目錄
第1章Gradle入門1
1.1配置Gradle環境1
1.1.1 Linux下搭建Gradle構建環境2
1.1.2 Windows下搭建Gradle構建環境3
1.2 Gradle版Hello World 3
1.3 Gradle Wrapper 5
1.3.1生成Wrapper 5
1.3. 2 Wrapper配置6
1.3.3 gradle-wrapper.properties 6
1.3.4自定義Wrapper Task 7
1.4 Gradle日誌8
1.4.1日誌級別8
1.4.2輸出錯誤堆棧信息9
1.4.3自己使用日誌信息調試9
1.5 Gradle命令行10
1.5.1記得使用幫助10
1.5.2查看所有可執行的Tasks 10
1.5.3 Gradle Help任務11
1.5.4強制刷新依賴12
1.5.5多任務調用13
1.5.6通過任務名字縮寫執行13
第2章Groovy基礎14
2.1字符串14
2.2集合15
2.2.1 List 16
2.2.2 Map 17
2.3方法18
2.3.1括號是可以省略的18
2.3.2 return是可以不寫的18
2.3.3代碼塊是可以作為參數傳遞的19
2.4 JavaBean 20
2.5閉包21
2.5.1初識閉包21
2.5 .2向閉包傳遞參數22
2.5.3閉包委託22
2.6 DSL 24
第3章Gradle構建腳本基礎25
3.1 Settings文件25
3.2 Build文件26
3.3 Projects以及tasks 27
3.4創建一個任務28
3.5任務依賴29
3.6任務間通過API控制、交互30
3.7自定義屬性31
3.8腳本即代碼,代碼也是腳本33
第4章Gradle任務34
4.1多種方式創建任務34
4.2多種方式訪問任務36
4.3任務分組和描述38
4.4 <<操作符39
4.5任務的執行分析41
4.6任務排序43
4.7任務的啟用和禁用44
4.8任務的onlyIf斷言45
4.9任務規則48
4.10小結49
第5章Gradle插件50
5.1插件的作用50
5.2如何應用一個插件51
5.2.1應用二進制插件51
5.2.2應用腳本插件51
5.2.3 apply方法的其他用法52
5.2.4應用第三方發布的插件53
5.2.5使用plugins DSL應用插件53
5.2.6更多好用的插件54
5.3自定義插件54
5.4小結56
第6章Java Gradle插件57
6.1如何應用57
6.2 Java插件約定的項目結構58
6.3如何配置第三方依賴59
6.4如何構建一個Java項目62
6.5源碼集合(SourceSet)概念63
6.6 Java插件添加的任務65
6.7 Java插件添加的屬性66
6.8多項目構建66
6.9如何發布構件69
6.10生成Idea和Eclipse配置71
6.11小結72
第7章Android Gradle插件73
7.1 Android Gradle插件簡介73
7.2 Android Gradle插件分類74
7.3應用Android Gradle插件74
7.4 Android Gradle工程示例75
7.4.1 compileSdkVersion 77
7.4.2 buildToolsVersion 78
7.4.3 defaultConfig 79
7.4.4 buildTypes 79
7.5 Android Gradle任務80
7.6從Eclipse遷移到Android Gradle工程81
7.6.1使用Android Studio導入81
7.6.2從Eclipse+ADT中導出82
7.7小結85
第8章自定義Android Gradle工程86
8.1 defaultConfig默認配置86
8.1.1 applicationId 87
8.1.2 minSdkVersion 87
8.1.3 targetSdkVersion 88
8.1.4 versionCode 89
8.1.5 versionName 89
8.1.6 testApplicationId 90
8.1 .7 testInstrumentationRunner 91
8.1.8 signingConfig 91
8.1.9 proguardFile 92
8.1.10 proguardFiles 93
8.2配置簽名信息93
8.3構建的應用類型97
8.3.1 applicationIdSuffix 97
8.3.2 debuggable 98
8.3.3 jniDebuggable 98
8.3.4 minifyEnabled 99
8.3.5 multiDexEnabled 99
8.3.6 proguardFile 100
8.3.7 proguardFiles 100
8.3.8 shrinkResources 101
8.3.9 signingConfig 101
8.4使用混淆102
8.5啟用zipalign優化104
8.6小結105
第9章Android Gradle高級自定義106
9.1使用共享庫106
9.2批量修改生成的apk文件名108
9.3動態生成版本信息111
9.3.1最原始的方式111
9.3.2分模塊的方式112
9.3.3從git的tag中獲取113
9.3.4從屬性文件中動態獲取和遞增117
9.4隱藏簽名文件信息118
9.5動態配置AndroidManifest文件120
9.6自定義你的BuildConfig 123
9.7動態添加自定義的資源126
9.8 Java編譯選項128
9.9 adb操作選項配置130
9.10 DEX選項配置133
9.11突破65535方法限制138
9.12自動清理未使用的資源142
第10章Android Gradle多項目構建147
10.1 Android項目區別147
10.2 Android多項目設置148
10.3庫項目引用和配置149
10.4庫項目單獨發布151
10.5小結154
第11章Android Gradle多渠道構建156
11.1多渠道構建的基本原理156
11.2 Flurry多渠道和友盟多渠道構建157
11.3多渠道構建定制159
11.3.1 applicationId 159
11.3.2 consumerProguardFiles 160
11.3.3 manifestPlaceholders 161
11.3.4 multiDexEnabled 161
11.3.5 proguardFiles 161
11.3.6 signingConfig 162
11.3.7 testApplicationId 162
11.3.8 testFunctionalTest和testHandleProfiling 163
11.3.9 testInstrumentationRunner 164
11.3.10 testInstrumentationRunnerArguments 164
11.3.11 versionCode和versionName 165
11.3.12 useJack 165
11.3.13 dimension 166
11.4提高多渠道構建的效率169
11.5小結170
第12章Android Gradle測試172
12.1基本概念172
12.2本地單元測試175
12.3 Instrument測試179
12.4測試選項配置181
12.5代碼覆蓋率184
12.6 Lint支持187
12.6.1 abortOnError 188
12.6.2 absolutePaths 189
12.6.3 check 189
12.6.4 checkAllWarnings 196
12.6.5 checkReleaseBuilds 196
12.6.6 disable 197
12.6.7 enable 198
12.6.8 explainIssues 198
12.6.9 htmlOutput 198
12.6.10 htmlReport 199
12.6.11 ignoreWarnings 199
12.6.12 lintConfig 199
12.6.13 noLines 199
12.6.14 quiet 200
12.6.15 severityOverrides 200
12.6.16 showAll 201
12.6.17 textOutput 202
12.6.18 textReport 202
12.6.19 warningsAsErrors 202
12.6.20 xmlOutput 203
12.6.21 xmlReport 203
12.6.22 error、fatal、ignore、warning、informational 203
第13章Android Gradle NDK支持206
13.1環境配置206
13.2編譯C/C++源代碼208
13.3多平台編譯212
13.4使用第三方的so庫214
13.5使用NDK提供的庫214
13.6 C++庫支持216
第14章Android Gradle持續集成219
14.1什麼是持續集成219
14.2持續集成的價值219
14.3 Android Gradle持續集成220
14.4怎樣更好地做持續集成222
14.5 人才是關鍵223