无法编译 NDK android 项目
Can't compile NDK android project
我正在使用 android studio 并打开 hello-jni 示例项目。
但是当我尝试编译项目时,提示:
Error:Cause: failed to find target with hash string 'android-23' in:
/Users/xx/opensource/android-sdk-macosx
<a href="openAndroidSdkManager">Open Android SDK Manager</a>
我已经安装了android6.0(api23)。为什么还是提示找不到?
我在 android stuido 中的首选项中查找,在 android SDK 选项卡中似乎可以找到 android 6.0 (api level 23 revision 1)。
下面是我的 gradle 文件:
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.0"
defaultConfig.with {
applicationId = "com.example.hellojni"
minSdkVersion.apiLevel = 3
targetSdkVersion.apiLevel = 23
}
}
/*
* native build settings
*/
android.ndk {
moduleName = "hello-jni"
/*
* Other ndk flags configurable here are
* cppFlags += "-fno-rtti"
* cppFlags += "-fno-exceptions"
* ldLibs = ["android", "log"]
* stl = "system"
*/
}
android.buildTypes {
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.txt')
}
}
android.productFlavors {
// for detailed abiFilter descriptions, refer to "Supported ABIs" @
// https://developer.android.com/ndk/guides/abis.html#sa
create("arm") {
ndk.abiFilters += "armeabi"
}
create("arm7") {
ndk.abiFilters += "armeabi-v7a"
}
create("arm8") {
ndk.abiFilters += "arm64-v8a"
}
create("x86") {
ndk.abiFilters += "x86"
}
create("x86-64") {
ndk.abiFilters += "x86_64"
}
create("mips") {
ndk.abiFilters += "mips"
}
create("mips-64") {
ndk.abiFilters += "mips64"
}
// To include all cpu architectures, leaves abiFilters empty
create("all")
}
}
我刚遇到同样的问题,我认为这是一个错误。但我设法使其适用于以下解决方法:
首先确保安装 api 和构建工具(见下图)
与 build.gradle 相比,更改 api 的版本并将工具构建到以前的版本:即
android{ compileSdkVersion = 22
buildToolsVersion = "22.0.1"
defaultConfig.with {
applicationId = "com.sample.teapot"
minSdkVersion.apiLevel = 11
targetSdkVersion.apiLevel = 22
}
}
同步gradle成功
改回版本
我也重启了几次android工作室,但不确定是否需要。
这对我有用:
我在 AndroidStudioProjects
下的主目录中删除了我正在处理的应用程序
重新启动Android Studio
- 它提示 Android Studio 向导,我完成了 Android
Studio 安装向导,它下载了一些 SDK 构建工具
修订版 23.0.1.
- 当下载 Android SDK 构建工具时出现 "Platform and Plugin Updates" 消息时,我还单击了更新 link 进行更新
一些组件。
- "Welcome to Android Studio" 中的 Android 安装向导会出现,
单击配置,它将显示 Android SDK 管理器正在获取
上一个答案中显示的一些包,单击新建或
更新 links
- 包加载完成后,您可以继续安装
可用的包。安装默认 selected 软件包后
您可能会得到更多 selected。安装 Android SDK 许可证。你
应该 select 每个,然后单击接受许可。 Android
Studio 将完成 gradle 构建过程
我正在使用 android studio 并打开 hello-jni 示例项目。 但是当我尝试编译项目时,提示:
Error:Cause: failed to find target with hash string 'android-23' in:
/Users/xx/opensource/android-sdk-macosx
<a href="openAndroidSdkManager">Open Android SDK Manager</a>
我已经安装了android6.0(api23)。为什么还是提示找不到? 我在 android stuido 中的首选项中查找,在 android SDK 选项卡中似乎可以找到 android 6.0 (api level 23 revision 1)。
下面是我的 gradle 文件:
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.0"
defaultConfig.with {
applicationId = "com.example.hellojni"
minSdkVersion.apiLevel = 3
targetSdkVersion.apiLevel = 23
}
}
/*
* native build settings
*/
android.ndk {
moduleName = "hello-jni"
/*
* Other ndk flags configurable here are
* cppFlags += "-fno-rtti"
* cppFlags += "-fno-exceptions"
* ldLibs = ["android", "log"]
* stl = "system"
*/
}
android.buildTypes {
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.txt')
}
}
android.productFlavors {
// for detailed abiFilter descriptions, refer to "Supported ABIs" @
// https://developer.android.com/ndk/guides/abis.html#sa
create("arm") {
ndk.abiFilters += "armeabi"
}
create("arm7") {
ndk.abiFilters += "armeabi-v7a"
}
create("arm8") {
ndk.abiFilters += "arm64-v8a"
}
create("x86") {
ndk.abiFilters += "x86"
}
create("x86-64") {
ndk.abiFilters += "x86_64"
}
create("mips") {
ndk.abiFilters += "mips"
}
create("mips-64") {
ndk.abiFilters += "mips64"
}
// To include all cpu architectures, leaves abiFilters empty
create("all")
}
}
我刚遇到同样的问题,我认为这是一个错误。但我设法使其适用于以下解决方法:
首先确保安装 api 和构建工具(见下图)
与 build.gradle 相比,更改 api 的版本并将工具构建到以前的版本:即
android{ compileSdkVersion = 22 buildToolsVersion = "22.0.1" defaultConfig.with { applicationId = "com.sample.teapot" minSdkVersion.apiLevel = 11 targetSdkVersion.apiLevel = 22 }
}
同步gradle成功
改回版本
我也重启了几次android工作室,但不确定是否需要。
这对我有用:
我在 AndroidStudioProjects
下的主目录中删除了我正在处理的应用程序
重新启动Android Studio
- 它提示 Android Studio 向导,我完成了 Android Studio 安装向导,它下载了一些 SDK 构建工具 修订版 23.0.1.
- 当下载 Android SDK 构建工具时出现 "Platform and Plugin Updates" 消息时,我还单击了更新 link 进行更新 一些组件。
- "Welcome to Android Studio" 中的 Android 安装向导会出现, 单击配置,它将显示 Android SDK 管理器正在获取 上一个答案中显示的一些包,单击新建或 更新 links
- 包加载完成后,您可以继续安装 可用的包。安装默认 selected 软件包后 您可能会得到更多 selected。安装 Android SDK 许可证。你 应该 select 每个,然后单击接受许可。 Android Studio 将完成 gradle 构建过程