如何在Android库AAR中包含第三方JAR,而无需合并代码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Android库AAR中包含第三方JAR,而无需合并代码相关的知识,希望对你有一定的参考价值。
我有一个新的要求,将JAR文件myspecial.jar
包含到我正在构建的android库中。当我使用gradle构建AAR时,生成的bundle将myspecial.jar
中的类和类都放入一个名为classes.jar
的文件中。我想让他们分开。
根据Android的网站https://developer.android.com/studio/projects/android-library.html,有可能做到这一点。
此外,AAR文件可能包含以下一个或多个可选条目:
/资产/
/礼拜四/那么.jar
/教你/阿比_那么/那么.so
/pro guard.txt
/临潼.jar
我已经尝试过我所知道的所有有限的gradle-fu。我无法弄清楚。
我偶然发现:https://github.com/adwiv/android-fat-aar但它似乎对我不起作用。
TL; DR:需要gradle支持将第三方jar作为自己的文件捆绑在aar里面的libs目录中,而不是将我自己的代码编译到classes.jar
中。
我想如果你禁用proguard,默认它们是分开的。将minifyEnabled true
更改为minifyEnabled false
可以禁用该程序。
解决方案是迁移到Gradle插件3.0 - https://developer.android.com/studio/preview/features/new-android-plugin-migration.html。它提供api
和implementation
属性,消除了罐子里的重复类。
以上是关于如何在Android库AAR中包含第三方JAR,而无需合并代码的主要内容,如果未能解决你的问题,请参考以下文章
如何发布带有远程依赖项 (gradle) 的 Android 库 (aar)?