android NDK和源码中输出Log信息的方法

    xiaoxiao2021-12-14  23

    NDK: 1、包含头文件 #include 2、Android.mk中包含库 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog 上面这个一定要,不然出现error: undefined reference to '__android_log_print' LOCAL_SHARED_LIBRARIES := libdl\ liblog\          #经测试在Eclipse中用NDK编译可有可无,没啥用!但在源码中就必须是他,所以都加上吧! libpre_AppUpgrade\ libpre_AppArea\ 3、在你的jni文件中定义 #define LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__) // 定义LOGD类型 #define LOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__) // 定义LOGI类型 #define LOGW(...)  __android_log_print(ANDROID_LOG_WARN,LOG_TAG,__VA_ARGS__) // 定义LOGW类型 #define LOGE(...)  __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__) // 定义LOGE类型 #define LOGF(...)  __android_log_print(ANDROID_LOG_FATAL,LOG_TAG,__VA_ARGS__) // 定义LOGF类型 adnroid4.2源码中已经将LOGD等都加了一个头, #define ALOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__) // 定义LOGD类型 #define ALOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__) // 定义LOGI类型 #define ALOGW(...)  __android_log_print(ANDROID_LOG_WARN,LOG_TAG,__VA_ARGS__) // 定义LOGW类型 #define ALOGE(...)  __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__) // 定义LOGE类型 #define ALOGF(...)  __android_log_print(ANDROID_LOG_FATAL,LOG_TAG,__VA_ARGS__) // 定义LOGF类型 注意如果你不想在每一个jni文件中都定义上述宏,投机方法即可以定义在:D:\android-ndk-r9d\platforms\android-19\arch-arm\usr\include\android\log.h中!当然这种编译也只能在你本机上使用啦~ 源码开发: 1、Android.mk中包含库 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog LOCAL_SHARED_LIBRARIES := libdl\ liblog\                          //源码中开发一定的加上 libpre_AppUpgrade\ libpre_AppArea\ 2、包含头文件#include 3、注意在使用时记得包含库的头文件
    转载请注明原文地址: https://ju.6miu.com/read-968880.html

    最新回复(0)