JNI写的SO库文件中怎么打印变量?Log,printk和printf都用不了,自定义Log可以打印消息串。

xqhrs232 2010-12-24 02:59:51
JNI写的SO库文件中怎么打印变量?Log,printk和printf都用不了,自定义Log可以打印消息串。
...全文
896 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xqhrs232 2010-12-27
  • 打赏
  • 举报
回复
谢谢大家,解决了我一个难题啊!!!
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 freshui 的回复:]
log.h中有啊, 我一般都会在公用头文件中定义

#if defined(TARGET_ANDROID)
#ifndef LOG_TAG
#define LOG_TAG "MY_DEFAULT"
#endif
#include <android/log.h>
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG……
[/Quote]

就是这里面定义滴
zhuzeitou 2010-12-27
  • 打赏
  • 举报
回复
同ls,接下来比如你要打印一个整型变量a
LOGI("a=%d", a);
就可以
freshui 2010-12-27
  • 打赏
  • 举报
回复
log.h中有啊, 我一般都会在公用头文件中定义

#if defined(TARGET_ANDROID)
#ifndef LOG_TAG
#define LOG_TAG "MY_DEFAULT"
#endif
#include <android/log.h>
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)

#else
#define LOGI printf
#define LOGD printf
#define LOGE printf
#endif


使用的话就可以和源码中(native端的)LOGD, LOGE使用一样了。
xqhrs232 2010-12-26
  • 打赏
  • 举报
回复
如何通过JNI传递对象执行回调

http://blog.csdn.net/evane1890/archive/2008/11/16/3313816.aspx

不知道行不行,上班的时候再试一下了
xqhrs232 2010-12-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhuzeitou 的回复:]
你可以去看下ndk里的android/log.h
[/Quote]

打印字符串我用的就是这个文件里面的函数啊,但不知道怎么去打印变量,像不支持变量打印格式的样子。
robin_wxg 2010-12-25
  • 打赏
  • 举报
回复
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "Hello from Robin, good!");

}
Dartagnan 2010-12-24
  • 打赏
  • 举报
回复
JNI还没入门,关注中
zhuzeitou 2010-12-24
  • 打赏
  • 举报
回复
你可以去看下ndk里的android/log.h

80,354

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧