Android NDK Native LIB,如何处理现有的stdio?

时间:2011-10-10 23:31:17

标签: android android-ndk native-code

我现有的原生C / C ++代码,我目前通过NDK构建到本机库和Android应用程序中。本机代码充满了对stdout和stderr的print语句。这样的事情有最好的做法吗?我可以忽略它们,还是需要将它们重定向到Android日志系统?

我将现有代码构建为独立的本机二进制文件并通过adb运行它,我看到了printf(到stdout)到控制台的所有输出。

看起来像是一个愚蠢的问题,但是stdio去了哪个Android应用程序?

1 个答案:

答案 0 :(得分:1)

默认情况下,stdout和stderr被发送到Android应用程序的/ dev / null(无处)。

您可以使用adb setprop将log.redirect-stdio设置为true,或将“log.redirect-stdio = true”放在/data/local.prop中(您可能需要root权限才能创建,但它更可靠)。这样做会将其输出发送到logcat日志。

请参阅“查看stdout和stderr”:http://developer.android.com/guide/developing/tools/adb.html