最近调试CTP,引入logcat打印过程出现过很多错误,现已成功的方法记录下来
一、eclipse windows xp环境下
1)、你的JNI的C/C++需要加入如下
#include <android/log.h>
#define LOG_TAG "CTP-JNI"
#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)、JNI对应的Android.mk如下,其中LOCAL_LDLIBS是加入log库,不然你的log.h找不到库
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := ctp-jni
LOCAL_SRC_FILES := ctp-jni.cpp
LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
include $(BUILD_SHARED_LIBRARY)
二、ubuntu环境下
1)、你的JNI的C/C++需要加入如下
#include <cutils/log.h>
#define LOG_TAG "Java_com_android_settings_JniOperator_nativeSetGloveMode"
#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)JNI对应的Android.mk如下LOCAL_PATH := $(call my-dir)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := com_android_settings_JniOperator.cpp
LOCAL_MODULE := libjni_Setting
LOCAL_MODULE_TAGS := optional eng
LOCAL_LDLIBS := -lm -llog
LOCAL_PRELINK_MODULE := false
LOCAL_SHARED_LIBRARIES := liblog libcutils
include $(BUILD_SHARED_LIBRARY)