2014-03-26 138 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