您的位置:首页 > 移动开发 > Android开发

Android Studio NDK开发在C代码中将Log输出到logcat上面

2016-12-01 22:18 676 查看
Android Ndk开发中在原生代码那边是不能用printf函数的,用了也输不出来。需要android提供的log.h服务。

第一步:在对应模块下的build.gradle文件中ndk节点配置需要加入log配置:

ndk{
moduleName "javacallc"  //so文件,编译生产的动态链接库文件自动加前缀lib
ldLibs "log"  //实现 log
abiFilters "armeabi", "armeabi-v7a", "x86","x86_64"
}


第二步:在头文件增加如下内容

#define  LOG    "JavaCallCDemoLog" // 这个是自定义的LOG的标识
#define  LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG,__VA_ARGS__) // 定义LOGD类型
#define  LOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG,__VA_ARGS__) // 定义LOGI类型
#define  LOGW(...)  __android_log_print(ANDROID_LOG_WARN,LOG,__VA_ARGS__) // 定义LOGW类型
#define LOGE(...)  __android_log_print(ANDROID_LOG_ERROR,LOG,__VA_ARGS__) // 定义LOGE类型
#define LOGF(...)  __android_log_print(ANDROID_LOG_FATAL,LOG,__VA_ARGS__) // 定义LOGF类型




第三步:在代码里面就可以使用了,把他当做printf来用就是了。

LOGI("fromJava = %p",&fromJava);


参考1

参考2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐