如何在android 系统 C/C++ 层中添加 log 信息
答案:4 悬赏:0 手机版
解决时间 2021-02-10 21:24
- 提问者网友:我一贱你就笑
- 2021-02-10 10:54
如何在android 系统 C/C++ 层中添加 log 信息
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-02-10 11:48
Android提供了相关的库:
#include <cutils/klog.h> //需要包含这个头文件
可以参考init的实现:
#define ERROR(x...) KLOG_ERROR("init", x)
#define NOTICE(x...) KLOG_NOTICE("init", x)
#define INFO(x...) KLOG_INFO("init", x)
在你的代码中:
INFO("env[%d] = '%s'\n", n, ENV[n]);
#include <cutils/klog.h> //需要包含这个头文件
可以参考init的实现:
#define ERROR(x...) KLOG_ERROR("init", x)
#define NOTICE(x...) KLOG_NOTICE("init", x)
#define INFO(x...) KLOG_INFO("init", x)
在你的代码中:
INFO("env[%d] = '%s'\n", n, ENV[n]);
全部回答
- 1楼网友:忘川信使
- 2021-02-10 14:36
底层不是有很多log信息打印,直接按照它的方法打印就好了吧.
像这些 ALOGE("Motion event has invalid pointer count %d; value must be between 1 and %d.", pointerCount, MAX_POINTERS); 都是系统打印的log吧.直接用它的方式打.
- 2楼网友:动情书生
- 2021-02-10 13:42
#include
并且在 函数中添加如下 log 输出信息(如蓝色字体显示):status_t MediaRecorder::setCamera(const sp& camera){LOGV("setCamera(%p)", camera.get()); if(mMediaRecorder == NULL) {
LOGE("media recorder is not initialized yet"); return INVALID_OPERATION;}if (!(mCurrentState & MEDIA_RECORDER_IDLE)) {
LOGE("setCamera called in an invalid state(%d)", mCurrentState); return INVALID_OPERATION;}status_t ret = mMediaRecorder->setCamera(camera);
if (OK != ret) {
LOGV("setCamera failed: %d", ret); mCurrentState = MEDIA_RECORDER_ERROR;
并且宏定义一下原始的 log 输出函数 __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG, __VA_ARGS__); 或者__android_log_write(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__);这样就不需要在打 log 的时候敲入那么多字符了宏定义如下:#define LOG_TAG "MediaRecorder"#define LOG(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG, __VA_ARGS__)
当然,你也可以只打印点字符信息LOG("InitFbImage");Log 信息查看:所有的 log 信息都可以通过控制台输出。
- 3楼网友:持酒劝斜阳
- 2021-02-10 12:41
#include
并且在 函数中添加如下 log 输出信息(如蓝色字体显示):status_t MediaRecorder::setCamera(const sp& camera){LOGV("setCamera(%p)", camera.get()); if(mMediaRecorder == NULL) {
LOGE("media recorder is not initialized yet"); return INVALID_OPERATION;}if (!(mCurrentState & MEDIA_RECORDER_IDLE)) {
LOGE("setCamera called in an invalid state(%d)", mCurrentState); return INVALID_OPERATION;}status_t ret = mMediaRecorder->setCamera(camera);
if (OK
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯