导入aar而不是模块时,Android库的行为有所不同

时间:2019-05-09 21:53:41

标签: android android-library aar

我制作了一个通过.aar在本地使用的Android库

在库保护中,它看起来像这样:

  • AAR演示项目- :应用 :库(源代码)

该库由使用Google Play Services Vision

的QR扫描仪组成

然后,我导出.aar文件,然后使用

导入另一个应用程序

Android Studio new / module / from aar/jar

  • 其他应用项目- :otherApp :图书馆(aar)

库在某些方面有不同的表现:

1-如果用作.aar,QR扫描器根本无法工作,但是如果通过源代码导入,则QR扫描器可以正常工作,我尝试将源代码作为模块导入:otherApp中,并且可以正常工作,但使用.aar根本不起作用。

2-为了使用该库,如果不导入,我还必须将Google Play Services Vision库包含到:otherApp中,得到ClassNotFoundException,我尝试定义Google像这样的传递依赖项:

implementation('com.google.android.gms:play-services-vision:17.0.2') {
   transitive = true
}

但是:otherApp项目似乎没有阅读它,但是我不必在库源代码项目内的:app模块中定义它。

我想知道将库用作.aar与在模块中使用源代码(在所有项目中均禁用R8 / ProGuard)之间是否存在区别(因为似乎是这种情况) ,如何使.aar的工作方式与通过源代码导入的库相同?

0 个答案:

没有答案