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

android jni打印log信息

2017-08-02 08:29 696 查看
今天,讲讲在jni中如何打印logxx,用来进行调试。

一、实现

1、修改Android.mk文件。

在这个配置文件中我们加入如下一行代码:

LOCAL_LDLIBS += -llog


注意:这行代码一定要加载include $(BUILD_SHARED_LIBRARY)之前。

具体如下图:



此时Android.mk文件文件的配置如下:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := hello
LOCAL_SRC_FILES := hello.c

LOCAL_LDLIBS += -llog

include $(BUILD_SHARED_LIBRARY)


2. 定义LOG 函数

先定义一个全局变量,再定义一些输出的LOG函数:

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


上述代码中定义的函数

分别对应于Android 的Java代码中的

 Log.d(), Log.i(), Log.w(),Log.e(), Log.f()等方法.

3.在C方法中利用LOGI方法打印Log

LOGI(" ......From C.....");

修改的配置如图:



android jni打印log信息就讲完了。

就这么简单。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息