我最近从 Eclipse 迁移到 Android Studio 我不断收到编译错误:
我收到此错误:
Error:Execution failed for task ':andEngine:compileReleaseNdk'.
com.android.ide.common.internal.LoggedErrorException: Failed to run command: C:\Program Files\Android\android-ndk-r10\ndk-build.cmd NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\Users\myUser\AndroidstudioProjects\MyApllicationName\andEngine\build\intermediates\ndk\release\Android.mk APP_PLATFORM=android-14 NDK_OUT=C:\Users\myUser\AndroidstudioProjects\MyApllicationName\andEngine\build\intermediates\ndk\release\obj NDK_LIBS_OUT=C:\Users\myUser\AndroidstudioProjects\MyApllicationName\andEngine\build\intermediates\ndk\release\lib APP_ABI=all Error Code: 1
我在“local.propeties”中设置:
sdk.dir=C\:\\Program Files (x86)\\Android\\android-studio\\sdk
ndk.dir=C\:\\Program Files\\Android\\android-ndk-r10
我下载了最新的NDK并将其放入
C\:\\Program Files\\Android\\android-ndk-r10
我也将它添加到环境变量中
“ANDROID_NDK”和“NDK_HOME”
我做错了什么? 如何使用 android-studio 编译 AndEngine?
最佳答案
对于 Android Studio,NDK 支持是初步的,您的 *.mk 文件将被忽略。
要解决您遇到的问题,您应该发布有关您的项目结构和 build.gradle 文件内容的更多信息。
否则,您可以通过设置 Android Studio/gradle 使其工作,以便它通过停用默认的 NDK 集成来重用您的 *.mk 文件,使其自行调用 ndk-build(.cmd) 并使用标准 libs/
.so 文件集成的位置,如下所示:
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig{
minSdkVersion 15
targetSdkVersion 19
versionCode 101
versionName "1.0.1"
}
sourceSets.main {
jniLibs.srcDir 'src/main/libs'
jni.srcDirs = [] //disable automatic ndk-build call
}
// call regular ndk-build(.cmd) script from app directory
task ndkBuild(type: Exec) {
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine 'ndk-build.cmd', '-C', file('src/main').absolutePath
} else {
commandLine 'ndk-build', '-C', file('src/main').absolutePath
}
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn ndkBuild
}
}
关于Android studio - AndEngine ndk编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25122782/