4

我正在使用 Android Studio 1.5.1 和Gradle 实验插件 0.4.0构建一个带有 NDK 库的应用程序。

即使 Gradle 配置是这样设置的(使用minSdkVersion.apiLevel = 18),似乎 NDK 库仍然编译为android-21

compileOptions.with {
    sourceCompatibility=JavaVersion.VERSION_1_7
    targetCompatibility=JavaVersion.VERSION_1_7
}

android {
    compileSdkVersion = 23
    buildToolsVersion = "23.0.2"

    defaultConfig.with {
        applicationId = "net.pol_online.hyper"
        minSdkVersion.apiLevel = 18  // Android 4.3 Jelly Bean
        targetSdkVersion.apiLevel = 23  // Android 6.0 Marshmallow
    }
}

是不是因为APP_PLATFORMGradle NDK支持没有根据最低SDK版本自动设置?如果是这样,你如何解决这个问题?

4

1 回答 1

6

你可以这样设置:

android.ndk {
   platformVersion = "19"
}

有关详细信息,请参阅https://stackoverflow.com/a/33982735/3115956。(在实践中,我认为您的库是针对目标构建android-23的,其效果与目标相同android-21-compileSdkVersion是影响它的库(对于 java 和本机代码,除非本机代码被覆盖)。

于 2015-12-30T18:50:42.977 回答