Android 組件化架構
內容描述
本書首先介紹Android組件化開發的基礎知識,剖析組件化的開發步驟和常見問題,探究組件化編譯原理和編譯優化措施。其次在項目架構上,介紹如何組織團隊來使用組件化開發,並將業務和人力進行解耦。最後深入介紹組件化分發技術及運用,探討組件化架構的演進及架構的思維。
目錄大綱
第1章組件化基礎
1.1你知道組件化嗎
1.2基礎組件化架構介紹
1.2.1依賴
1.2.2聚合和解耦
1.3重新認識AndroidManifest
1.3.1 AndroidManifest屬性匯總
1.3.2 AndroidManifest屬性變更
1.4你所不知道的Application
1.4.1 Applicaton的基礎和作用
1.4.2組件化Application
1.5小結
第2章組件化編程
2.1本地廣播
2.1.1本地廣播基礎介紹
2.1.2使用方法
2.1.3本地廣播源碼分析
2.2組件間通信機制
2.2.1組件化層級障礙
2.2.2事件總線
2.2.3組件化事件總線的考量
2.3組件間跳轉
2.3.1隱式跳轉
2.3.2 ARouter路由跳轉
2.3.3 Android路由原理
2.3.4組件化最佳路由
2.3.5空類索引
2.4動態創建
2.4.1反射基礎
2.4.2反射進階
2.4.3反射簡化jOOR
2.4.4動態創建Fragment
2.4.5動態配置Application
2.5數據存儲
2.5.1數據的存儲方式
2.5.2組件化存儲
2.5.3組件化數據庫
2.6權限管理
2.6.1權限機制
2.6.2組件化權限
2.6. 3動態權限框架
2.6.4路由攔截
2.7靜態常量
2.7.1資源限制
2.7.2組件化的靜態變量
2.7.3 R2.java的秘密
2.8資源衝突
2.8.1組件化的資源匯合
2.8.2組件化資源衝突
2.9組件化混淆
2.9.1混淆基礎
2.9.2資源混淆
2.9.3組件化混淆
2.10多渠道模塊
2.10.1多渠道基礎
2.10.2批量打包
2.10.3多渠道模塊配置
2.11小結
第3章組件化優化
3.1 Gradle優化
3.1.1 Gradle基礎
3.1.2版本參數優化
3.1.3調試優化
3.1.4資源引用配置
3.1.5 Gradle 4.1依賴特性
3.2 Git組件化部署
3.2.1 submodule子模塊
3.2.2 subtree
3.3小結
第4章組件化編譯
4.1 Gradle編譯
4.1.1 Android基礎編譯流程
4.1.2 Instant Run
4.1.3更優的Gradle構建策略
4.2極速增量編譯
4.2.1 Freeline的使用
4.2.2 Freeline運行介紹
4.3小結
第5章組件化分發
5.1 Activity分發
5.1.1 Activity的生命週期
5.1.2 Acitity分發技術
5.2 Fragment分發
5.2.1 Fragment的生命週期
5.2. 2 Fragment分發技術
5.3 View分發
5.3.1 View的生命週期
5.3.2 View分發技術
5.4依賴倒置
5.4.1依賴倒置原則
5.4.2依賴倒置分發
5.5組件化列表配置
5.5.1 Javapoet語法基礎
5.5.2編譯時註解配置
5.5.3集成配置列表
5.6加載優化
5.6.1線程加載
5.6.2模塊懶加載
5.7層級限制
5.8多模板設計
5.8.1多模板註解
5.8.2腳本配置
5.8.3動態配置
5.9小結
第6章組件化流通
6.1內部流通
6.1.1 Maven基礎
6.1.2本地緩存
6.1.3遠程倉庫
6.2組件化SDK
6.2.1 SDK基礎知識
6.2.2 Python腳本合併
6.2.3 fat-aar腳本合併
6.3 JCenter共享
6.4小結
第7章架構模板
7.1組件化模板
7.1.1模板基礎
7.1. 2模板製作
7.1.3實時模板
7.1.4頭部註釋模板
7.2註解檢測
7.3小結
第8章架構演化
8.1基礎架構
8.2基礎組件化
8.3模塊化
8.4多模板化
8.5插件化
8.6進程化
8.7小結
附錄A思維與架構
作者介紹
蒼王
歡聚時代YY高級工程師,具有多年Android研發經驗,致力於Android組件化、進程化的研究。活躍於簡書、掘金等技術社區,喜歡分享自己的技術經驗。