Android以maven方式提供SDK,有关SDK内aar引用处理

因业务需求,我们会遇到需要开发SDK提供给外部使用,有可能是公司内部其他部分或者是对外的SDK。一般有两种方式:aar和maven。

例如module C 为SDK核心代码,为了隔离module C对外接口,方便混淆,module B 通过api方式依赖module C 的maven,相当于包一层壳,只需要对外提供module B 的maven即可。

module C需要对libs目录下的jar和xxx.aar引用进行处理。

1、module C 引用jar可以通过implementation方式,会和module C一起打包进maven 生成的aar中。

2、module C 引用xxx.aar则可通过compileOnly方式引用,确保编译不出错。如果xxx.aar也通过implementation方式引用,虽然上传到maven不会出错,但module C被依赖时,则会出现问题,因为implementation方式引用xxx.aar是不会被打包进maven生成的aar。

完成上述操作后,module B 通过 api 的方式依赖 module C对应的maven。

最后将module B 生成的maven 和module C 中的xxx.aar一并提供给接入方。接入方可以在libs目录下添加xxx.aar,然后通过implementation方式引用xxx.aar。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容