2010-12-15 72 views
13

有沒有人知道內存調試工具(如Valgrind)的Android NDK下的本機C++代碼?Android的內存調試工具NDK C++代碼

+0

的valgrind的ARM版本已經「即將推出」多年。如果你將setprop libc.debug.malloc設置爲10並停止/啓動,你會得到一些額外的檢查,但我沒有發現它們都是有用的。 – fadden 2010-12-17 00:43:10

+1

分離你的jni(java和本地impl之間的膠水代碼)和本地實現。使用x86調試工具處理本地實現。 – qrtt1 2010-12-21 12:55:03

回答

8

我們有一個使用相當一些本地代碼的項目。正如在這個問題的一個評論中暗示的那樣,最好的方法是在另一個環境中測試代碼。

我們有一個單獨的項目,它建立在Linux中,並調用我們在Android代碼中使用的C/C++函數。一旦你在那個時候,你已經習慣了所有漂亮的工具(gdb,Valgrind等)。

比在手機上做同樣的事情更有效率(假設你甚至可以找到一個好工具)。

棘手的部分是有一個良好的測試工具,而應該是一個給予該開始了正確的道路......任何項目;)