Zainstalowałem Sequoyah Android Native Support, a teraz mogę uruchomić tryb debugowania. Mam punkt przerwania w tym samym wierszu, w którym nazywam metodę natywną, więc gdy uruchamiam tryb debugowania Java, zaćmienie zatrzymuje się w tym wierszu, uruchamiam 'ndk-gdb', a ja zajmuję się trybem debugowania C/C++, I zobacz, jak konsola coś robi. Ale jak mogę ustawić C punktów przerwania? Ponieważ mój kod C jest biblioteką .so, więc nie mogę umieścić punktów przerwania w tym pliku. Mam floder JNI, w którym znajdują się pliki .c i .h, ale nie zatrzymuje się, gdy umieszczam punkty przerwania. Dziennik Eclipse rozpoznaje punkty przerwania, ale drukuje błąd.Jak debugować natywną aplikację dla systemu Android?
break-insert com_example_pruebaffmpeg_MainActivity.c: 4323 błąd, msg = "Nie stół symbol jest ładowany Użyj \". \ "Pliku polecenia."
Czy skompilowałeś swój kod C z dołączonymi informacjami/symbolami debugowania? Jeśli kompilujesz z GCC, upewnij się, że w opcjach kompilacji i łączenia jest włączona opcja '-g'. –
Nie wiem, co mi tłumaczysz. Używam ndk-build do kompilacji mojego kodu C i uzyskania biblioteki .so. I uruchamiam projekt Android w środowisku Eclipse za pomocą narzędzia NDK. – beni
Dla ndk-build istnieją inne kroki, które należy wykonać, aby zbudować z symbolami debugowania. Spójrz na [to pytanie] (http://stackoverflow.com/questions/8934575/debugging-android-ndk-native-apps) –