【问题标题】:Resolve deprecated NDK warnings in Android Studio解决 Android Studio 中已弃用的 NDK 警告
【发布时间】:2017-03-12 05:20:41
【问题描述】:

我有一个使用 OpenCV 的 Java 包装器进行图像处理的 Android 应用程序。要将 OpenCV 添加到项目中,我必须将以下行添加到 gradle.properties:

android.useDeprecatedNdk=true

这一直运行良好,没有任何警告或错误(据我所知),直到我在很长一段时间后更新了我的 Android Studio 和 Gradle(我现在使用的是 Gradle 2.2.2 和 Android Studio 2.2.2)。现在,当我构建我的应用程序时,我会在消息窗口中收到以下警告:

警告:找到了Native C/C++源代码,但是好像是NDK 选项未配置。请注意,如果您有一个 Android.mk,它是 不用于编译。建议的解决方法是删除 默认jni源码目录添加:

警告:已弃用的 NDK 集成由 useDeprecatedNdk 标志启用 gradle.properties 即将从 Android Gradle 插件中移除。

即使此时构建成功,正如第二个警告所告知的那样,这很可能会在未来造成一些麻烦,所以我想在事情发生之前尽快解决它们。

有谁知道如何解决这些警告?或者,除了添加所有已编译的代码(.so 文件)并设置我之前提到的标志之外,还有其他方法可以将 OpenCV 导入 Android 项目吗?对此的任何帮助将不胜感激。

【问题讨论】:

  • 也许 NDK 也需要更新
  • @LunarWatcher 我试过了,但我仍然收到同样的警告。
  • 遇到同样的问题...您找到解决方案了吗?您是否创建了 cmake 文件?

标签: android opencv gradle android-ndk


【解决方案1】:

我建议迁移到使用 cmake 的原生支持。您可以通过以下link查看提供使用cmake添加OpenCV的分步教程的链接。

您的代码应该保持不变而不做任何更改,唯一必要的操作是弄清楚如何使用 CMakeLists.txt 将它们包含在构建过​​程中。

【讨论】:

    【解决方案2】:

    在项目窗格中,右键单击您的应用程序(在我的 React Native 项目中,它是“应用程序”目录),然后选择“使用 gradle 链接 C++ 项目”。

    现在您必须找到 Android.mk 文件 - 它应该已经在 your_app/app/build/intermediates/ndk/debug/ 中生成

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      • 2015-04-27
      • 2016-01-05
      • 2020-04-07
      • 2013-08-28
      • 1970-01-01
      • 2019-06-19
      相关资源
      最近更新 更多