java - 使用 CMake 时如何在 Gradle 构建脚本中设置 NDK 路径?

标签 java android android-studio gradle android-ndk

所以我在网上阅读的所有内容都说要在 ANT 构建属性文件中设置 ndk.dir 以修复我从 Gradle 收到的“NDK 未配置”错误,但显然我不能那样做,因为我没有使用 ant,我使用的是 Gradle+CMake。

下面是我的 gradle 脚本。我对此还是很陌生,我只是想边走边想办法。我在 Gradle 中很好地构建了 Java fragment ,但此时我无法集成 CMake。

apply plugin: 'com.android.library'

android {
    compileSdkVersion 17
    buildToolsVersion "22.0.1"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 17

        ndk {
            moduleName "UI"
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    lintOptions {
        abortOnError false
    }

    externalNativeBuild {
        cmake {
            path '../../CMakeLists.txt'
        }
    }
}

在哪里可以指定NDK路径?我定义了一个名为 ANDROID_NDK 的环境变量。 CMake 3.7 已经使用它来寻找 NDK 的位置。为什么 android gradle 脚本不使用它?由于我不使用 ant,正确的方法是什么?

注意:我试图通过 gradle build 命令在 Android Studio 之外首先在命令行上构建东西。我得到的错误:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':Core:UI'.
> NDK not configured.
Download it with SDK manager.)

最佳答案

您可以通过选择 File->Project Structure 菜单项在 Android Studio 中指定 NDK 的路径。

然后您应该会看到“项目结构”设置对话框,您可以在其中指定 NDK 位置。

您在此处输入的值将修改 local.properties 文件中的 ndk.dir 值,您可以在下图中的背景中看到该值:

enter image description here

关于java - 使用 CMake 时如何在 Gradle 构建脚本中设置 NDK 路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40184881/

相关文章:

java - 如何监听TextArea中两个按键的代码组合?

android - numLevels Wifimanager.calculateSignalLevel 方法的可能输入值是什么?

java - 使用渐变绘制更改点击 ListView 项目时的颜色

java - 如何在启动器图标中添加类似像素的 Activity 快捷方式?

Java线程同步-按正确顺序打印数字

java - 如何将 Getopt 错误消息的输出重定向到字符串?

java - 模拟器中 InfiniteScrollAdapter 中的 URLImage 显示 NPE (CodenameOne)

安卓分析 : Disable Analytics Tracking

java - 找不到uninstall.exe android studio

java - kotlin 中是否有任何方法可以获取 "Int"中特定索引处的数字?