如何在android中启用ALOGD?

时间:2013-11-13 05:47:33

标签: android logging android-camera

在CPP代码中,对于ex in camera HAL,不会打印ALOGD消息。 就像在set_preview_window()中一样 ALOGD(“set_preview_window:X,rc%d”,rc); 如何启用它们?

4 个答案:

答案 0 :(得分:3)

尝试在要捕获日志的文件中添加以下语句。

#define LOG_NDEBUG 0
#define LOG_NIDEBUG 0
#define LOG_NDDEBUG 0

编译完成后,您可以尝试通过adb logcat获取日志。

答案 1 :(得分:1)

请参阅ALOGD的定义以获取提示。

在我的情况下我必须做

setprop persist.testapp.debug.log 5

5是调试级别。

答案 2 :(得分:1)

这些宏(ALOGX ...)在某些系统核心C / C ++标头中定义。 您可以在 system / core / include / log / log.h (AOSP 6.0.0r1)中找到示例

有时您需要在相应的Android.mk的LOCAL_SHARED_LIBRARIES中添加 liblog

LOCAL_SHARED_LIBRARIES := ... liblog

此外,您可能需要在C / C ++相关源文件的顶部添加两行

 #define LOG_NDEBUG 0
 #define LOG_TAG "LibName"

如果您想要ALOGV()日志,请不要忘记 LOG_NDEBUG 0 。 重建lib / module之后,您应该能够在logcat中看到日志。

答案 3 :(得分:0)

要从CPP获取日志到Android,您可以使用以下

   __android_log_print(ANDROID_LOG_ERROR, "TRACKERS", "%s", Str);

要使用它,您需要导入以下库

#include <android/log.h>

如果你想要获得简单的日志,你可以使用以下

LOG("Add description here");