Erzeuge Core Dump in Android

9

Ich entwickle eine Android-Anwendung mit einigen geteilt Bibliotheken geschrieben von mir und kompiliert mit ndk-r5b. Die Anwendung funktioniert, y und die Aufrufe an die Bibliotheken funktioniert auch, aber ich entdeckte einige Fehler, Segmentierungsfehler, und ich muss es debuggen, aber ich weiß nicht, wie Debuggen Native Code von Android und ich weiß nicht, ob ich Core Dumps erzeugen kann, Wie in Linux, zum Debuggen meiner Bibliotheken.

Irgendeine Idee?

    
Chris 31.05.2011, 10:43
quelle

1 Antwort

5

Das ndk kommt mit ndk-gdb, mit dem Sie angeblich native Anwendungen debuggen können. Wenn Sie das gesamte Andriod-Open-Source-Projekt herunterladen, wird auch eine Version von gdb zum Debuggen verwendet. Suchen Sie im Dokument / Ordner des ndk nach, wie Sie es verwenden können. Dieses Tutorial könnte sich auch als hilfreich erweisen: Ссылка

Wie jedoch in einer kürzlich gestellten Frage gezeigt, fragte ich: Running ndk-gdb mit Paket nicht gefunden Fehler auf Motorola Telefon Ich kann es immer noch nicht zur Arbeit bringen.

Bearbeiten: Sie haben in den Kommentaren gesagt, dass Sie ein Samsung-Gerät verwenden: Samsung beschließt, einige der für das native Debuggen erforderlichen Interna zu zerstören, aber es ist leicht zu reparieren, wenn Sie Root-Zugriff auf das Gerät haben. Wenn Sie das --verbose-Flag verwenden, werden Sie wahrscheinlich feststellen, dass der Fehler anders ist als der Fehler "Paket unbekannt". Das liegt daran, dass es sich in /data/system/packages.list befindet, aber Samsung hat diese Datei in /dbdata/system/packages.list umbenannt. Wenn Sie also in /data/system/packages.list einen Symlink zu dieser Datei erstellen (erfordert Root-Zugriff), sollte es funktionieren. Oder zumindest so behauptet die ndk-Mailingliste: Ссылка

    
Leif Andersen 31.05.2011, 14:47
quelle