2014-03-26 88 views
22

从我的理解中,apklib包含与Maven共享的代码+资源。 aar文件由Gradle发布。Android依赖关系:apklib vs aar文件

aar在一个主要方面与apklib不同:类被编译并包含在aar根目录下的classes.jar中。而apklib不能包含已编译的类文件或罐子。

1有人可以解释apklibaar文件之间的主要区别吗?

2 Can Maven use aar?可以Gradle使用apklib

3哪种格式更好?

回答

16

1有人可以解释apklib与aar 文件之间的主要区别吗?

  1. aar可以不包含源代码,并在情况下,libs文件夹内的一个java罐子你不想:

是在我脑海中,除了一个你说的夫妇差异提供源代码(与Google Play服务一样);

  • aar可以包含自定义的proguard文件和自定义lint规则,但我不确定他们是否考虑到此刻。
  • 2 Can Maven可以使用aar吗? Gradle能使用apklib吗?

    从版本3.7.0开始,Android Maven插件支持aar。 Gradle不支持使用apklib依赖项,但可以将android-library导出为apklib(请参阅this post)。

    +1

    _Maven支持自版本3.7.0_开始:根据[download page](http://maven.apache.org/download.cgi)3.2.2是maven的最新版本,对不对? – rafaelportela

    +0

    我的意思是Android Maven Plugin,对不起。 – rciovati