NDK调试
第一种(控制台输出):
1、配置好环境变量,这是为了方便起见。将你sdk和ndk的根目录放到环境变量path中。配置完成之后可以来个小检测:
在命令行分别输入adb和ndk-stack后点击回车,只要他不报你这些东西找不到,就表示你配置好了;
2、在命令行中使用cd进入当前工程下;
3、接下来在命令行输入:adb logcat | ndk-stack -sym [so文件所在的目录]。然后点击回车,然后会看到命令行一直处于等待状态,表示你已经可以运行手机进行调试了。以我个人的为例子,我输入的是:adb logcat | ndk-stack -sym obj/local/armeabi-v7a
4、当程序运行出现问题的时候,命令行就会显示出来。
第二种(打log):
(1) android.mk文件中添加LOCAL_CFLAGS+=-DDEBUGLVL=0和LOCAL_LDLIBS += -llog
(2)加入头文件#include <android/log.h>
(3)为了方便,加一些宏定义:
1 #define LOG_TAG "libibmphotophun" //定义logcat中tag标签 2 #define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__) 3 #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)
(4)使用:
LOGI("debug!");LOGI("%d %d",6,6);
在eclipse的debug中就会输出相应的信息;