【发布时间】:2017-07-10 12:53:17
【问题描述】:
我使用的是 Visual Studio,它的调试机制对我非常有用。在 1 个项目中有许多头文件和 C 文件,只需一个简单的 F10 就可以让我从 main() 函数的开头开始浏览,这样我就可以看到正在执行的代码的顺序。
现在我进入 Android Studio 并从一个使用 NDK、JNI 的项目开始(这个项目例如:https://github.com/googlesamples/android-ndk/tree/master/gles3jni),这让我感到困惑,因为有很多 .java 文件和其他 C++(本机代码)文件,我不知道哪个文件中的哪个代码首先执行以及它是如何进行的。
我的问题是:我正在寻找一种从一开始就在 Android Studio 中逐行调试的方法查看其工作流程喜欢 Visual Studio 的做法,但我从搜索中得到的只是如何调试时从断点开始。
我尝试在启动器活动的onCreate() 方法中设置断点,并使用F8 到Step Over 和F7 到Step Into,但它没有像我预期的那样工作。它一直把我带到超类 Activity.java 和 GLSurafaceView.java,而不是把我带到 C++ 代码。在 Android Studio 中有什么方法可以做到这一点以及如何做到这一点?
我已经尝试过其他项目,但问题仍然存在。希望有人能帮忙。
【问题讨论】:
-
你是如何构建你的原生库的?一个小的 sn-p 会很有帮助。
-
@Moved,一切都已经在上面的项目中设置好了。我所要做的就是使用 SDK 管理器安装 CMake、NDK 和 LLBD。一旦所有这些都安装完毕,项目就可以运行了。更多信息可以在这里找到:developer.android.com/ndk/guides/index.html
标签: android-studio debugging android-ndk java-native-interface