定义头文件
common.h
#ifndef CZXING_COMMON_H
#define CZXING_COMMON_H
#include <jni.h>
#ifdef NDK_DEBUG
#define LOG_TAG "yezhou"
#include <android/log.h>
#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 LOGW(...) __android_log_print(ANDROID_LOG_WARN, LOG_TAG, __VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
#define LOGF(...) __android_log_print(ANDROID_LOG_FATAL, LOG_TAG, __VA_ARGS__)
#endif
#endif
调用方式
#include "common.h"
extern "C"
JNIEXPORT jint JNICALL
Java_cc_androidx_zxing_code_NativeSdk_writeCode(JNIEnv *env, jobject instance, jstring jcontent,
jint width, jint height, jint color,
jstring jformat, jobjectArray result) {
const char *content = env->GetStringUTFChars(jcontent, 0);
const char *format = env->GetStringUTFChars(jformat, 0);
LOGE("writeCode.content [%s]", content);
...
return 0;
}
引入log库
CMakeLists.txt
find_library(
log-lib
log)
target_link_libraries(
czxing
ZXingCore
jnigraphics
android
z
${log-lib})
Android.mk
LOCAL_MODULE := ccrypto
LOCAL_LDLIBS := -llog \
-lm