Android Studio NDK开发在C代码中将Log输出到logcat上面
16lz
2021-01-23
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
更多相关文章
- Android:PopWindow — 对Android的底部弹窗、顶部弹窗菜单及自定
- 22个值得收藏的android开源代码-UI篇
- Android实现自定义适配器详解
- [Android]混淆代码后生成带签名的apk
- 把android sdk 1.5源代码加入SDK
- Android代码内存优化建议-Android资源篇
- Android 中自定义属性(attr.xml,TypedArray)的使用!
- Android 自定义view组件