2010-12-15 18 views
13

Android NDK altında yerel C++ kodu için bellek hata ayıklama araçları (Valgrind gibi) bilen var mı?Android için bellek hata ayıklama araçları NDK C++ kodu

+0

valgrind ARM sürümü "yakında" olmuştur yıllarca. Libc.debug.malloc'u 10'a ayarlayıp durdurup/başlatırsanız, bazı ek kontroller alırsınız, ancak bunların hepsini bu kadar faydalı bulmamadım. – fadden

+1

Jni'nizi (java ile native impl. Arasındaki tutkal kodu) ve yerel implementaion'u ayırın. X86 hata ayıklama aracını kullanarak yerel uygulama işlemek. – qrtt1

cevap

8

Çok az yerel kod kullanan bir projemiz var. Sorunun yorumlarından birinde belirtildiği gibi, en iyi yaklaşım bu kodu başka bir çevrede test etmektir.

Linux'ta oluşturduğumuz ve Android kodumuzda kullandığımız C/C++ işlevlerini çağıran ayrı bir projemiz var. Bu noktaya geldiğinizde, kullandığınız tüm güzel aletler (gdb, Valgrind, vb.) Sizin için kullanılabilir.

Telefonda aynı şeyi yapmaktan çok daha üretken (hatta iyi bir araç bulabileceğinizi varsayarak).

zor kısmı iyi bir test koşum takımı sahip olmaktır, ama bu doğru yolda ... çıktık herhangi bir proje verilmelidir;)