ndk-build方式编译,Android jni中打印log报错undefined reference to `__android_log_print‘

一、环境搭建

android studio2021.2.1

jdk版本1.8

二、jni中日志输出配置

1.build.gradle配置

ndk下配置,ldLibs "log"

 

2.在.c文件的配置

(1)头文件的配置

#include <android/log.h>
#define LOG_TAG "TAG"
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)

(2)输出日志

 LOGD("value===%d\n",value);
 LOGI("value===%d\n",value);

Rebuild Project后报错,如下图所示:

 需在Android.mk文件上配置

(3)Android.mk日志配置

#打印日志库
LOCAL_LDLIBS := -llog

根据以上三步骤,则可输出jni的native的日志 ,不同的AS、JDK版本报错可能处理方法会不一样。

猜你喜欢

转载自blog.csdn.net/zaq977684/article/details/130740009