我需要在Android平臺上調試本機C代碼(ndk-build)。是否可以使用Android Studio調試本機C代碼(一個ndk-build項目)?
是否可以在Android Studio中進行調試,如果有的話,我該怎麼做?
我需要在Android平臺上調試本機C代碼(ndk-build)。是否可以使用Android Studio調試本機C代碼(一個ndk-build項目)?
是否可以在Android Studio中進行調試,如果有的話,我該怎麼做?
在你的C源代碼,你可以使用此功能添加日誌:
__android_log_print(ANDROID_LOG_INFO, "MyTag", "The value is %d", some_variable);
需要這樣定義:
#define <android/log.h>
日誌將在Android設備中的logcat來打印。
您沒有像Android應用程序中的「一步一步」調試器。
@ranjithkumards它有用嗎? – LaurentY 2015-03-03 09:31:06
隨着LaurentY響應,在你的頭文件,你可以定義一些日誌是這樣的:
#define <android/log.h>
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
一旦你.C /的.cpp代碼設置的TAG爲:
#define LOG_TAG "sample.cpp"
,並致電使用日誌:
LOGI("Yes!!, %s, %s", some, some2);
ndk-build
,make
或任何你的應用程序適用於我最新的Studio版本(1.3 RC3)。您不必通過CLI/logcat進行調試。
我試圖重新設置您的帖子,但是有點混亂,如果我錯過了某些內容,請再次編輯它以使問題更清晰。如果你想得到答案,試着寫體面的英語是很重要的。 – tux3 2015-03-06 17:38:01
即使您的IDE無法成爲ndk的gdb的前端,也應該可以獨立運行它或使用不同的前端。有一點點戰略思想,如下面的答案中所建議的日誌調試可能確實是解決問題的最直接途徑。 – 2015-03-06 18:04:11