因項目需要最近在做app的插件化開發,目前我在多個項目中用到了兩種插件開發的方式把自己的心得簡單寫一寫給自己做個記錄一邊以後查閱同時分享給大家參考。
昨晚喝大了好難受!酒還是少喝好,好多年了不怎麼喝。
先說最近用到的這種方式Framework框架:簡單的說Framework框架就是爲Android應用開發提供了一系列的api接口和服務。能夠從源碼下載到編譯,可以很好的做到功能的擴展。
首選需要插件端開發完成後生產aar包提供給宿主端來使用
下面是如何插件端生成aar包:
1、修改app-->build.gradle文件,把com.android.application修改成library。註釋defaultConfig中的applicationId
2、因爲程序在最終打包的時候是以資源合併的方式進行,故而AndroidMainifest中的Application在最終打包的時候建議清空屬性(開發時需要添加),並且不要自定義基礎Application.否則當宿主衝突可能會引起主程序編譯不過的問題
3、Rebuild一下,會在build->outputs中獲取到該aar包
到這裏插件端工作基本就完成了。宿主端添加aar包
1、複製aar到app-->libs下
2、修改app-->build.gradle
⑴添加repositories{flatDir{dirs'libs'}}
⑵dependencies中添加comile(name:'aar名稱',ext:'aar類型')
3、Rebuild一下後看到就成功了
後邊就可以開發使用了!