在android 输出log 信息 用于调试

来源:互联网 发布:网络黑市论坛 编辑:程序博客网 时间:2024/06/05 07:12

 

要想在 jni native 代码中看打印信息,printf 是不行的,需使用__android_log_print,如下所示。

__android_log_print(ANDROID_LOG_INFO, "ProjectName", "I am : %d/n", n);

该函数与 printf 用法相似,使用格式字符。打印的结果通过 logcat 查看。

注意,使用时需要将头文件 android/log.h 包含进来。

为方便使用,往往定义一些宏

#include <android/log.h>#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "ProjectName", __VA_ARGS__)#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG  , "ProjectName", __VA_ARGS__)#define LOGI(...) __android_log_print(ANDROID_LOG_INFO   , "ProjectName", __VA_ARGS__)#define LOGW(...) __android_log_print(ANDROID_LOG_WARN   , "ProjectName", __VA_ARGS__)#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR  , "ProjectName", __VA_ARGS__)在  Android.mk文件中需要加入:LOCAL_LDLIBS := -llogLOCAL_C_INCLUDES  += system/core/include/cutilsLOCAL_SHARED_LIBRARIES := libcutils

android_LogPriority枚举类型,如下所示:typedef enum android_LogPriority { ANDROID_LOG_UNKNOWN = 0, ANDROID_LOG_DEFAULT, ANDROID_LOG_VERBOSE, ANDROID_LOG_DEBUG, ANDROID_LOG_INFO, ANDROID_LOG_WARN, ANDROID_LOG_ERROR, ANDROID_LOG_FATAL, ANDROID_LOG_SILENT, } android_LogPriority;




http://blog.csdn.net/fh400/article/details/5675285


原创粉丝点击