因项目需要最近在做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一下后看到就成功了
后边就可以开发使用了!