Gere core dump no android

9

Estou desenvolvendo uma aplicação para android usando alguns bibliotecas escritas por mim e compiladas com o ndk-r5b. O aplicativo funciona y e as chamadas para as bibliotecas também funcionam, mas eu detectei alguns erros, falhas de segmentações, e preciso depurá-lo, mas não sei como depurar código nativo do Android e não sei se posso gerar core dumps, como no linux, para depurar minhas bibliotecas.

Alguma ideia?

    
por Chris 31.05.2011 в 12:43
fonte

1 resposta

5

O ndk vem com o ndk-gdb, que supostamente permite que você depure aplicativos nativos. Além disso, se você baixar todo o projeto open source andriod, eles também terão alguma versão do gdb usada para depuração. Procure na pasta docs / do ndk para aprender a usá-lo. Este tutorial também pode ser útil: link

No entanto, como mostrado em uma pergunta recente, perguntei: Executando ndk-gdb com pacote não encontrado erro no motorola telefone Eu ainda não consigo fazer isso funcionar.

Editar: Você disse nos comentários que estava usando um dispositivo Samsung: A Samsung decidiu destruir o funcionamento de alguns dos internos essenciais necessários para a depuração nativa, mas é facilmente solucionável se você tiver acesso root ao dispositivo. Se você usar o sinalizador --verbose, provavelmente descobrirá que o erro é diferente disso, um erro desconhecido do pacote. Isso é porque está procurando em /data/system/packages.list, mas a samsung renomeou esse arquivo para /dbdata/system/packages.list. Então, se você fizer um link simbólico para esse arquivo em /data/system/packages.list, (requer acesso root), ele deve funcionar. Ou, pelo menos, afirma a lista de discussão do ndk: link

    
por Leif Andersen 31.05.2011 / 16:47
fonte