組件化優(yōu)劣
1. 解耦,代碼復(fù)用率高
2. 分模塊維護(hù)與集成百新,減少編譯時(shí)間
3. 減少維護(hù)成本
組件化原理
1. 子模塊與主工程能單獨(dú)編譯運(yùn)行
2. SDK,第三方包版本一致
3. 資源的沖突解決
4. 模塊之間的相互使用與傳遞數(shù)據(jù)
5. APPlication初始化
組件化實(shí)施
1. 模塊分化
先將能想到的項(xiàng)目思考分成不同模塊
2. 新建module
a) 新建model,新建一個(gè)version用來(lái)統(tǒng)一管理版本
b) 在 下新增字段isGroup標(biāo)記是否為集成模式還是開(kāi)發(fā)模式
c) 在每個(gè)module組件的gradle里修改標(biāo)記isgroup為每個(gè)module入口
d) 在每個(gè)module組件的gradle里修改版本為vsersion里面版本
3. 修改module
a) 在module下配置manifest,理論上有兩個(gè)
b) 在gradle 下配置不同開(kāi)發(fā)模式下使用哪個(gè)manifest
c) 配置resourcePrefix "a_"使每個(gè)module新建資源分離
4. 引入路由
1.使用阿里Arouter引入
官網(wǎng)地址:https://github.com/alibaba/ARouter/blob/991a221386ea4d51b6f61590efa0dfdf9b412a1f/README_CN.md
2.在每個(gè)module下的gradle添加依賴(lài)徒欣,不能使用同一方式
3.每個(gè)gradle配置包名
4.每個(gè)Activity添加注解,配置同一跳轉(zhuǎn)蜗字,最好用一個(gè)包管理起來(lái)(未做)
5. 完成
編譯和分開(kāi)編譯試運(yùn)行
注 引入第三方包必須API方式