Android开发在Jni中的log打印
2017-03-25 14:58
239 查看
Android开发在Jni中的log打印
c/c++文件中的改动
在c/c++文件中加入头文件:#include <android/log.h>
在Android.mk文件中的改动
在Android.mk文件中加入LOCAL_LDLIBS += -llog
改动完Android.mk文件大致效果:
LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ setting_func.c LOCAL_MODULE:= libsetting_func LOCAL_MODULE_TAGS:= optional LOCAL_C_INCLUDES := $(JNI_H_INCLUDE) \ frameworks/base/include/media LOCAL_LDLIBS +=-ldl -llog LOCAL_SHARED_LIBRARIES :=\ libandroid_runtime\ libnativehelper\ libcutils\ libdl\ libmedia include $(BUILD_SHARED_LIBRARY)
注意:
LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS)
要写在前面
定义Log函数
#define TAG "Lalala" // 这个是自定义的LOG的标识 #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,TAG ,__VA_ARGS__) // 定义LOGD类型,相当于Log.d(TAG,""); #define LOGI(...) __android_log_print(ANDROID_LOG_INFO,TAG ,__VA_ARGS__) // 定义LOGI类型,相当于Log.i(TAG,""); #define LOGW(...) __android_log_print(ANDROID_LOG_WARN,TAG ,__VA_ARGS__) // 定义LOGW类型,相当于Log.w(TAG,""); #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,TAG ,__VA_ARGS__) // 定义LOGE类型,相当于Log.e(TAG,""); #define LOGF(...) __android_log_print(ANDROID_LOG_FATAL,TAG ,__VA_ARGS__) // 定义LOGF类型,相当于Log.f(TAG,"");
定义完在c中的效果大致为:
#include <jni.h> #include "com_sniper_myfm_FmNative.h" #include <stdio.h> #include <unistd.h> #include <linux/videodev2.h> #include <fcntl.h> #include <android/log.h> #define TAG "setting-func"//定义自定义TAG #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,TAG,__VA_ARGS__)//相当于Java中的Log.d(TAG,""); #define FM_DEVICE_PATH "/dev/radio0" #define SUCCESS 1 #define FAIL 0 int fd_driver=-1; JNIEXPORT jint JNICALL Java_com_sniper_myfm_FmNative_openDev (JNIEnv *env, jclass jcl){ fd_driver = open(FM_DEVICE_PATH,O_RDONLY,O_NONBLOCK); LOGD("<<<<<<<<<fd_driver: %d",fd_driver); if(fd_driver<0){ return FAIL; } return SUCCESS; }
用到哪个方法定义哪个,不用全部定义。
显示效果图
需求实现!
相关文章推荐
- Android NDK(学习笔记四)—— 在NDK开发中JNI打印Log信息
- Android Jni开发之创建Jni程序和打印log
- Android Stuido Ndk-Jni 开发(二):Jni中打印log信息
- Android jni 开发中C/C++层打印Log信息
- Android studio中JNI-NDK开发打印LOG出现 undefined reference to `__android_log_print' 解决
- android jni打印log
- Android JNI编程(八)——体验AS2.2.2编写Jni程序、Java调C、C调Java函数、将C代码中的Log打印至Logcat
- 实现Android Studio JNI开发C/C++使用__android_log_print输出Log
- android jni打印log信息
- android-----JNI中的log打印
- android 调用jni 并打印log
- android-----JNI中的log打印
- Android JNI编程(八)——体验AS2.2.2编写Jni程序、Java调C、C调Java函数、将C代码中的Log打印至Logcat
- Android.util.Log 关于Android开发中打印log
- android jni 打印 log 信息
- [置顶] Android开发之封装log打印日志的工具类,实用logutils详细代码
- Android开发,测试机不打印Log的解决办法
- jni开发中打印log信息
- android-----JNI中的log打印
- Android开发-----关于解决Retrofit打印HttpLog和设置连接超时的问题