如何在Android库AAR中包含第三方JAR,而无需合并代码

问题描述 投票:5回答:2

我有一个新的要求,将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中。

gradle android-gradle build.gradle android-library aar
2个回答
0
投票

我想如果你禁用proguard,默认它们是分开的。将minifyEnabled true更改为minifyEnabled false可以禁用该程序。


-1
投票

解决方案是迁移到Gradle插件3.0 - https://developer.android.com/studio/preview/features/new-android-plugin-migration.html。它提供apiimplementation属性,消除了罐子里的重复类。

© www.soinside.com 2019 - 2024. All rights reserved.