2013-06-19 127 views
3

如何在eclipse中的android应用程序开发中的日志猫上获得本机C++程序的cout输出。Android本机代码调试

请有人帮我这里。

+1

http://stackoverflow.com/questions/10531050/redirect-stdout-to-logcat-in-android-ndk –

+0

您可以启用checkJNI [更多内容](http://android-developers.blogspot.in /2011/07/debugging-android-jni-with-checkjni.html) – Nargis

+0

有没有一种方法可以将本地C++数组代码的标准输出获取到log-cat。 –

回答

5

stdout/stderr文件描述符在Android应用程序中发送到/dev/null。 (Java的等价物,System.outSystem.err,被重定向到该日志由应用程序框架。)

Dalvik虚拟机包括一个黑客工具,将让你看到标准输出/标准错误有根的设备上通过设置log.redirect-stdio财产。详情请参阅this link。它通过启动一个从stdio文件描述符读取并将数据复制到日志记录系统的线程来工作。

对于新代码,直接使用Android日志调用要容易得多。如果你从其他地方进口图书馆,当然,这有点困难。如有必要,您可以将the code out of Dalvik复制到您的应用程序中并让它执行相同的操作。

+0

感谢您的 - 显然会发生什么 - 但为什么文档会说:“默认情况下,Android系统会将stdout和stderr _(System.out和System.err)_输出发送到/ dev/null。” (重点是我的)。请参阅:http://developer.android.com/tools/debugging/debugging-log.html#viewingStd –

+1

文档错误。我提交了https://code.google.com/p/android/issues/detail?id=62555。 – fadden

+0

非常感谢! +1 - 我受不了不确定性:) –

相关问题