Android依赖项:apklib与aar文件

23

据我所知,apklib 包含与 Maven 共享的代码和资源。 aar 文件由 Gradle 分发。

aar 与 apklib 最主要的区别在于:aar 中编译后的类被包含在根目录下的 classes.jar 中,而 apklib 不能包含编译过的类文件或 jar 包。

1 有人能解释一下 apklibaar 文件的主要区别吗?

2 Maven 能使用 aar 吗?Gradle 能使用 apklib 吗?

3 哪种格式更“好”?

1个回答

20

1 有人能解释一下apklib和aar文件的主要区别吗?

除了您提到的区别,以下是我想到的几点:

  1. aar不包含源代码
  2. aar可以包含自定义的混淆文件和自定义的lint规则

2 Maven可以使用aar吗?Gradle可以使用apklib吗?

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


1
同时,由于apklib非常古老且早于aar和其他格式,而且仅适用于maven工具,因此在android-maven-plugin中已被弃用。 - Manfred Moser

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接