zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

android jni之找不到utils/Log.h解决(一百四十六)

Androidlog 解决 不到 JNI utils
2023-09-14 09:09:56 时间
  1. 解决android jni找不到utils/Log.h问题

  1. test.cpp

#include <android/log.h>

#if 1
#ifndef MODULE_NAME
#define MODULE_NAME  "AAudioDemo"
#endif

#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, MODULE_NAME, __VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, MODULE_NAME, __VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO, MODULE_NAME, __VA_ARGS__)
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN,MODULE_NAME, __VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,MODULE_NAME, __VA_ARGS__)
#define LOGF(...) __android_log_print(ANDROID_LOG_FATAL,MODULE_NAME, __VA_ARGS__)

#define ASSERT(cond, ...) if (!(cond)) {__android_log_assert(#cond, MODULE_NAME, __VA_ARGS__);}
#else

#define LOGV(...)
#define LOGD(...)
#define LOGI(...)
#define LOGW(...)
#define LOGE(...)
#define LOGF(...)
#define ASSERT(cond, ...)

#endif
  1. CMakeLists.txt

cmake_minimum_required(VERSION 3.10.2)
project("native-audio-jni")

add_library(native-audio-jni # 需要编译so名字,实际编译出来后为:libnative-audio-jni.so
            SHARED # 设置为动态库
            native-audio-jni.c # 需要编译成动态库的源码
           )

target_link_libraries(native-audio-jni log android OpenSLES cutils utils) # 编译需要链接的动态库.