2013-06-19 174 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 - 我受不了不確定性:) –

相關問題