gpt4 book ai didi

android - 创建使用 AAR 文件作为依赖项的 Android 库

转载 作者:行者123 更新时间:2023-12-05 00:18:42 31 4
gpt4 key购买 nike

我想将 android 库构建为 AAR 文件,在输出 AAR 文件中包含依赖项。它使用另一个 AAR 文件作为 libs 文件夹的依赖项。

enter image description here

构建库显示此错误:

构建 AAR 时不支持直接本地 .aar 文件依赖项。生成的 AAR 将被破坏,因为来自任何本地 .aar 文件依赖项的类和 Android 资源不会打包到生成的 AAR 中。

我尝试将 AAR 文件提取为模块 enter image description here

然后导入为项目 enter image description here

构建命令有效,但它不包含 classes.jar 中的外部库 enter image description here

我的proguard-rules.pro文件是

-dontwarn javax.annotation.Nullable
-dontwarn com.facetec.sdk.**
-keep class com.facetec.sdk.** { *; }

我也试过使用 https://github.com/kezong/fat-aar-android库和导入的 facetec-sdk 模块作为嵌入项目,但构建命令显示 lint 错误

enter image description here

最佳答案

我在尝试创建一个依赖于以 .aar 格式交付给我的 SDK 的 android 库时遇到了类似的问题。使用较新的 AGP(Android Gradle 插件)4+,不允许在我创建的 android 库中编译 aar - 向我显示此错误:“为库模块创建 AAR 时,不支持库模块的直接本地 .aar 文件依赖项。”

我找到了这个链接 https://www.programmersought.com/article/63808911660/答案对我很有帮助,它为我提供了编译 aar 的解决方案,并允许我将它的类导入到我的 android 库中。

剪短-

  1. 创建libs文件夹,并将/name/.arr文件添加到libs文件夹。
  2. 在项目的 build.gradle 文件中,在 allprojects 范围下,在存储库范围下,添加
    flatDir {
    dirs 'libs' //this way we can find the .aar file in libs folder
    }
  3. 在app的build.gradle dependencies范围下添加
api(name: '/name/', ext: 'aar')

它目前有效,我希望以后没有问题,但 AS 发出警告以避免使用 flatDirs。但我在这个问题上浪费了太多时间,如果有人有更多见解,我会很乐意收到。

关于android - 创建使用 AAR 文件作为依赖项的 Android 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67093493/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com