Android Studio Project 中Module打包成aar包

在公司开发中遇到这样需求,将一个独立的应用嵌入其他应用当中;

相关方法有两种:

第一种是将被嵌入的应用打包成 jar 包,但是这样的局限性是无法将被嵌入的应用所使用的资源性文件一起打包;

第二种是将被嵌入的应用打包成 aar 包,这也是 Android Studio 的一种新特性,可以将应用所使用的资源性文件一起打包;

如果Project 中 Module 是一个应用,则在 Module 的 build.gradle 文件中定义属性为:apply plugin: 'com.android.application';而如果 Mudule 是一个被引用的依赖 lib 库的话,则在 Module 的 build.gradle 文件中定义属性为: apply plugin: 'com.android.library;所以当我们将应用 Module 打包出 aar 文件的时候,需要修改类型属性。正常情况下,直接重新编译 Module 后可以在  目录下看到所要的 aar 打包文件。

也有可能在重新编译项目应用的时候,会出现找不到某些资源文件的错误;这可能是因为被嵌入项目引用了某些开源库,所以在引用的时候需要将这些配置也手动添加进来。

还遇到了如下图的错误:

 同时在引用成功后,查看项目目录结构也确实可以查到该类,如下图:


按正常情况不应该出现这种错误的;后面经过查询和验证,其实出现这种错误的原因是 KdsCombinationDeailActivity 类当中我还引用了其他自定义的 lib 依赖库;而在引用的时候只是引用了打包成功后的 aar 包,而没有手动添加被嵌入项目所依赖的 lib 库(打包 aar 文件的时候这些依赖库需要自己手动添加);如下图


在引用打包成功后的 aar 的同时也需要手动添加依赖库文件 shareLib 和 shareMainLib(直接将 shareLib 和 shareMainLib 依赖库的 aar 包直接拷贝过去也可以);这样就OK了。 

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值