我创建了两个Android Studio应用程序。其中一个是aar图书馆。我在第二个应用程序中使用了这个aar库。我使用File-> New-> New Module-> Import AAR / JAR Packages选项添加了aar库。之后,我可以看到我的aar库的反编译源。当我更新aar库时,我将新的aar文件复制并粘贴到我的应用程序项目文件夹中。但这次Android Studio会显示较旧的反编译源。但是成功编译新源代码。如何在Android Studio中更新反编译源?当我导入aar文件implementation project(':app-debug')
行添加了我的build.gradle
文件。
我使用的是Android Studio 3.0.1
我的解决方案
更新aar / jar文件后,我可以找到更新本地源的唯一方法是单击Sync Project with Gradle Files按钮。
我遇到了同样的问题,在我的项目中尝试了各种形式的包括我的本地aar,尝试了每种重建方法,使缓存无效等,但我仍然遇到更新文件后我的本地aar中的更改无法使用的问题在libs文件夹中。
唯一对我有用的是:
现在,yourlib.aar中的更改应该在您的项目中可用。如果您将此库包含在多个模块中,我猜您必须为每个模块执行此操作。不理想,但我在这个问题上花了至少5个小时,而这些步骤是我看似强迫改变的唯一方法。我猜测从gradle文件中删除库然后同步会强制它在再次添加时获取新库。
我遇到了同样的问题并且很快解决了以下问题:
这是作为项目包含的AAR(当您使用File-> New-> New Module ...-> Import .JAR / .AAR Package时,它是如何包含的)。
现在你通过project
表示法包括AAR。由于AAR实际上只是一个文件,因此它应该包含在files
表示法中。
假设文件夹结构如下:
您可以在app/build.gradle
的依赖项块中包含以下任何行的文件:
// include just my_library
implementation files('libs/my_library.aar')
// include just other_library
implementation files("$rootDir/common/libs/other_library.aar")
// include both libraries
implementation files('libs/my_library.aar', "$rootDir/common/libs/other_library.aar")
顺便说一下,在https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.dsl.DependencyHandler.html上有一个相当完整的支持依赖类型列表。
除了评论/取消评论和重新同步Gradle项目和设置之外,我还必须删除整个build-cache目录。
在Mac上:〜/ .android / build-cache / Windows:不确定此目录位置的位置。
通过Windows资源管理器替换.arr文件后。唯一对我有用的是File - > Invalidate caches / Restrt
您是否尝试首先在Android Studio上关闭反编译文件的选项卡,更新AAR项目上的versionName,重建AAR,传输,然后看到它更新了?
我知道它对我有用。