提问人:Alexander Belokon 提问时间:8/5/2018 最后编辑:Kelechi DanielsAlexander Belokon 更新时间:3/13/2023 访问量:872
Android Studio - 在现有旧项目中启用本机C++调试(card.io Android 源代码)
Android Studio - Enable native C++ debugging in existing older project (card.io Android Source)
问:
我目前正在尝试了解 card.io Android Source 的本机实现是如何工作的。为此,如果能够调试本机代码,那就太好了。目前,我的断点没有得到遵守。C++
我确实尝试了以下方法:
调整应用程序生成文件 (Application.mk):
APP_ABI := armeabi-v7a APP_CFLAGS += -UNDEBUG -O0 -g -ggdb APP_OPTIM := debug APP_CPPFLAGS += -DDMZ_DEBUG=1
将 buildtype 添加到 SampleApp 的 build.gradle 文件中
buildTypes { release { minifyEnabled true proguardFile getDefaultProguardFile('proguard-android.txt') } debug { debuggable true } }
注意:我正在使用 (64 位),如果我创建一个有支持的新项目,调试可以完美运行。Android Studio 3.1
Ubuntu 16.04
C++
我们正在设备上进行调试;该项目正在使用一个系统。Android 7.0
NDK-build
答:
0赞
Pravin Divraniya
8/9/2018
#1
根据此链接,请阅读“编译”部分。
如果一切设置正确,NDK 构建将由 gradle,构建 card.io 时。但对于调试,你可以只用它来启动构建的这一部分。
./gradlew
buildNative
如果您遇到任何错误,请检查此线程。./gradlew buildNative
我没有检查它,所以希望它有效。
评论
1赞
Alexander Belokon
8/13/2018
嗨,感谢您的回答,但我收到以下错误:在项目中找不到任务“buildNative”
1赞
Alexander Belokon
8/13/2018
此外,如果我运行“./gradlew tasks”,则没有列出buildNative
0赞
Pravin Divraniya
8/13/2018
确保您已安装 ndk 并且 ndk-build 位于 PATH 中。如果没有,请为 ndk 文件设置环境变量
0赞
Alexander Belokon
8/13/2018
ndk.dir 是在项目的 local.properties 中设置的
0赞
Pravin Divraniya
8/13/2018
读设置生成环境部分。
评论