【问题标题】:Releasing Android Library without NDK dependency发布不依赖 NDK 的 Android 库
【发布时间】:2020-10-13 07:48:28
【问题描述】:

我正在构建一个部分用 C++ 编写并使用 OpenCV 的 .aar 库。

当我组装图书馆时,我会得到一个包含所有内容的 .aar,我可以将它导入到不同的项目中。构建项目时出现错误,我仍然需要在导入 .aar 的项目中使用正确的 ndk。如果我想把图书馆给别人,那就不好了。

库的 JNI 部分是否应该已经编译,所以如果我已经有了 .aar,我就不需要 NDK 了吗? 如何从 .aar 中删除依赖项?

编辑:

错误是No version of NDK matched the requested version 20.0.5594570. Versions available locally: 17.3.6528147, 21.0.6113669

我通过将 .aar 放入模块中的 libs/ 文件夹并将 '*.aar' 添加到 build.gradle 文件树实现中来包含 .aar。

【问题讨论】:

  • 错误是什么?您如何构建 AAR?

标签: android android-ndk aar


【解决方案1】:

原因是自动剥离了我的库的本机部分。

在此说明:https://stackoverflow.com/a/62320616/4284799

解决方案 1: 在项目 build.gradle 中更改 gradle 版本

dependencies {
    classpath 'com.android.tools.build:gradle:3.5.0'
}

解决方案2:安装一个ndk并在local.properties中设置

ndk.dir=/path/to/android-sdk/ndk-bundle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    • 1970-01-01
    • 2021-02-06
    相关资源
    最近更新 更多