为什么在 Android 上重定向 stdout/stderr 不起作用?

2024-04-06

我下载了 SDL 1.3 并在我的 android 2.2 设备上将其与 OpenGL ES 一起进行了测试。它工作正常,但我没有得到输出printf来电。我尝试了下面的命令,如安卓开发者页面 http://developer.android.com/guide/developing/debugging/debugging-log.html#viewingStd但两者都没有DDMS在 Eclipse 中也不是adb logcat报告程序使用的写入字符串printf。我确保过滤了stdout tag.

$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start

我错过了什么或做错了什么?


根据这个推介会 http://elinux.org/images/c/c9/Android-tips-and-tricks-2010-10.pdf, log.redirect-stdio用于Dalvik输出,重定向C/C++输出(例如printf),您必须在设备上安装 busybox 并使用其xargs像这样的实用程序:

myprogram | xargs log

这显然适用于作为独立可执行文件调用的代码。如果仅用于调试目的,您可以编写一个小程序来调用您的库,并使用以下命令从应用程序中调用它xargs.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么在 Android 上重定向 stdout/stderr 不起作用? 的相关文章

随机推荐