android jni打印log

先引入包
#include <android/log.h>
__android_log_print(int prio, const char *tag,  const char *fmt, ...)
prio可以是以下几种类型:
     ANDROID_LOG_UNKNOWN
    ANDROID_LOG_DEFAULT
    ANDROID_LOG_VERBOSE
    ANDROID_LOG_DEBUG
    ANDROID_LOG_INFO
    ANDROID_LOG_WARN
    ANDROID_LOG_ERROR
    ANDROID_LOG_FATAL
    ANDROID_LOG_SILENT
tag和fmt分别相当于java里面的Log.i(tag, msg);
下面写个简单的demo
#include <jni.h>
#include <android/log.h>
#include <string.h>
#define   LOG_TAG    "MYLOG"
#define   LOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
#define   LOGE(...)  __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)
//传给C语言String
JNIEXPORT jstring JNICALL Java_cn_my_ndkpassdata_DataProvider_sayHelloInC(
          JNIEnv * env, jobject obj, jstring s) {
     char* a = "hello";
     char* rtn = NULL;
     rtn = Jstring2CStr(env, s);
     LOGI("string %s",rtn);
     LOGI("END");
     return (*env)->NewStringUTF(env, strcat(rtn, a));
}
 移动开发qq群:59516399

posted on 2012-12-19 20:09  南瓜饼  阅读(1657)  评论(0编辑  收藏  举报

导航