Android Studio本机调试不工作,始终显示“0”;此文件不是项目的一部分;
我向Android Studio添加了一个gradle项目。 该项目以前是这样构建的:首先调用python脚本,该脚本将调用ndk build来构建.so,然后调用gradle脚本来归档.apk 导入到Android Studio后,我将externalNativeBuild块添加到build.gradle:Android Studio本机调试不工作,始终显示“0”;此文件不是项目的一部分;,android,android-studio,debugging,lldb,ndk-build,Android,Android Studio,Debugging,Lldb,Ndk Build,我向Android Studio添加了一个gradle项目。 该项目以前是这样构建的:首先调用python脚本,该脚本将调用ndk build来构建.so,然后调用gradle脚本来归档.apk 导入到Android Studio后,我将externalNativeBuild块添加到build.gradle: apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVers
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '25.0.0'
defaultConfig {
applicationId "org.cocos2dx.Game"
minSdkVersion 19
targetSdkVersion 23
versionCode 1
versionName "1.0"
externalNativeBuild {
ndkBuild {
abiFilters "x86"
arguments "-j3"
}
}
}
sourceSets.main {
java.srcDir "src"
res.srcDir "res"
jniLibs.srcDir "libs"
manifest.srcFile "AndroidManifest.xml"
assets.srcDir "assets"
}
signingConfigs {
release {
if (project.hasProperty("RELEASE_STORE_FILE")) {
storeFile file(RELEASE_STORE_FILE)
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
if (project.hasProperty("RELEASE_STORE_FILE")) {
signingConfig signingConfigs.release
}
}
debug {
debuggable true
jniDebuggable true
externalNativeBuild {
ndkBuild {
cFlags "-DDEBUG=1"
}
}
}
}
externalNativeBuild {
ndkBuild {
path "jni/Android.mk"
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':libcocos2dx')
}
task cleanAssets(type: Delete) {
delete 'assets'
}
task copyAssets(type: Copy) {
from '../../Resources'
into 'assets'
}
clean.dependsOn cleanAssets
preBuild.dependsOn copyAssets
项目成功编译、安装、运行,但当信号发生时,堆栈中的所有函数名称都是灰色的,点击函数无法导航到C++代码(但函数的名称是正确的)。如果手动打开代码,代码顶部总是显示“此文件不是项目的一部分”
我确信C++代码编译得很好,这是怎么发生的? < P>我自己修正的。 我把NDK版本从9b改为13,问题解决了。 没有人告诉我这件事,我尝试了所有方法,最终发现解决方案是如此简单。所以我发布了这个答案,以防万一我可以节省别人的时间 错误报告不会告诉您“去升级NDK”,但是如果发生了一些奇怪的事情,请先尝试一下。在这种情况下,我认为这是因为ndk工具链中的一些错误,这些错误在更高版本中已修复