Log dei crash
Panoramica
I log dei crash sono strumenti diagnostici preziosi che aiutano gli sviluppatori a identificare e correggere problemi e bug che causano il crash o un comportamento inatteso dell'applicazione. È possibile condividere i log dal proprio dispositivo Android con il team di sviluppo di OsmAnd. Attualmente, gli utenti iOS hanno solo un tipo di opzione per l'invio dei log dei crash.
Log dei crash e Log dell'app
OsmAnd consente di inviare due tipi di dati agli sviluppatori:
- Log dei crash. Generati quando l'app OsmAnd incontra un errore critico o un'eccezione che ne causa il crash. Questi log forniscono informazioni dettagliate sullo stato dell'applicazione durante il guasto, inclusi dati di build, stack trace, messaggi di errore e altri dettagli rilevanti.
- Log della sessione/app corrente. Un registro del flusso di log di OsmAnd che cattura vari eventi e messaggi. Questi log aiutano gli sviluppatori a monitorare il comportamento dell'app, a tracciare il flusso di esecuzione, a tracciare azioni specifiche e a indagare su problemi non correlati ai crash. I logcat log di solito contengono registrazioni dell'attività dal momento in cui l'app è stata avviata l'ultima volta.
Fai attenzione quando invii i log dell'app, poiché potrebbero contenere informazioni private come la posizione del dispositivo, le query di ricerca, i risultati della creazione di percorsi e i dati di navigazione.
Invia log dall'app OsmAnd
- Android
- iOS


- Vai a Menù → Aiuto → Invia i log degli arresti anomali dell'app o Invia i log della sessione corrente (Invia log dell'app corrente su iOS). A seconda della tua situazione, seleziona il tipo di log appropriato. Puoi fare riferimento alla sezione Log dei crash e Log dell'app per i dettagli sulle differenze tra i tipi di log.
- Nel menu a comparsa, scegli Gmail o la tua app di posta elettronica preferita. Ti consigliamo di inviare i log a
support@osmand.net. - Tocca il pulsante Send.
Istogramma dell'heap per problemi di memoria (Android)
Un istogramma dell'heap è una tabella che mostra cosa occupa la memoria Java dell'app: nomi delle classi con conteggi e dimensioni degli oggetti. Aiuta gli sviluppatori a individuare cosa consuma memoria quando l'app diventa lenta, si blocca o si chiude dopo un po'. Non contiene le tue posizioni, i nomi delle tracce o le query di ricerca. OsmAnd esegue un dump completo della memoria sul dispositivo, lo trasforma in istogramma ed elimina subito il dump.
L'esecuzione del dump blocca l'app per 5–10 secondi. Se tocchi lo schermo durante quel tempo, Android potrebbe mostrare OsmAnd non risponde. Per questo motivo la raccolta automatica è disattivata per impostazione predefinita.
Quando attivarla:
- OsmAnd si chiude da solo o mostra ripetutamente non risponde, soprattutto dopo un certo tempo di utilizzo o quando apri la ricerca, la mappa con molti POI o I miei luoghi con molte tracce.
- L'app diventa più lenta più a lungo rimane in esecuzione e il riavvio la migliora.
- Il report di crash indica che l'app ha esaurito la memoria (
OutOfMemoryError). - Il supporto di OsmAnd ti ha chiesto di raccogliere un istogramma dell'heap.
Quando lasciarla disattivata:
- Uso quotidiano e navigazione, quando l'app funziona correttamente.
- Crash che si verificano subito a ogni avvio o con un'azione specifica come l'apertura di un file. In questi casi è sufficiente un normale log dei crash.
Come raccogliere e inviare:
- Attiva il plugin di sviluppo OsmAnd e vai su Menu principale → Plugin → Sviluppo OsmAnd → Impostazioni → Memoria → Memoria Java.
- Nel pannello Heap dump, scegli una delle seguenti opzioni:
- Raccogli su utilizzo elevato. L'istogramma viene raccolto automaticamente quando la memoria Java è quasi piena, al massimo una volta ogni 30 minuti, e viene allegato al successivo report di crash. Continua a usare l'app normalmente finché il problema non si ripresenta.
- Raccogli e analizza ora. Raccoglie subito l'istogramma e mostra il risultato. Usalo quando l'app è già lenta e Memoria Java mostra un utilizzo elevato.
- Tocca Condividi report per inviare l'ultimo report agli sviluppatori, oppure invialo dalla finestra di dialogo del crash al prossimo avvio dell'app.
- Disattiva Raccogli su utilizzo elevato una volta inviato il report.

Invia file Tombstone (Android)
Solo per utenti avanzati!
In certi casi complessi o insoliti, potrebbero essere richiesti i file Tombstone. Questi file forniscono stack trace dettagliate per tutti i thread in un processo che si blocca (non solo quello che ha causato l'errore), una mappa di memoria completa e un elenco di tutti i descrittori di file aperti. I file Tombstone sono vitali per il debug e la diagnosi di problemi relativi al codice nativo sulla piattaforma Android.
Utilizzo del tuo dispositivo
Per esportare i file tombstone, è necessario generare un report di bug utilizzando le impostazioni di sistema Android:
-
Abilita le Opzioni sviluppatore (questa schermata è nascosta per impostazione predefinita).
- Vai a Impostazioni → Informazioni sul telefono → Informazioni software (questo percorso è valido per i dispositivi Samsung).
- Tocca Numero build sette volte finché un pop-up non conferma che la modalità sviluppatore è attiva.
-
Vai a Opzioni sviluppatore, solitamente situate in fondo all'elenco delle impostazioni. Puoi anche utilizzare la funzione di ricerca.
- Tocca l'opzione Acquisisci report bug.
- Seleziona il tipo di report bug e tocca Report.
Dopo che il report bug è pronto, riceverai una notifica. Tocca la casella di notifica per scaricare il report sul tuo dispositivo. Decomprimi il file e invia i file tombstone al team di sviluppatori di OsmAnd (email: support@osmand.net).

Si prega di notare che i report bug possono contenere dati privati, inclusi l'utilizzo dell'app o la posizione.
Utilizzo di ADB
L'Android Debugging Bridge (ADB) è uno strumento a riga di comando che consente agli sviluppatori di eseguire il debug delle proprie applicazioni. Per utilizzare ADB per esportare i file tombstone, dovrai prima scaricarlo e installarlo. Segui le istruzioni fornite sul sito ufficiale degli sviluppatori Android.
Prepara il tuo dispositivo
Assicurati che le Opzioni sviluppatore siano abilitate (questa schermata è nascosta per impostazione predefinita) e che il Debug USB sia attivato:
- Naviga in Impostazioni → Informazioni sul telefono → Informazioni software.
- Tocca Numero build sette volte finché un pop-up non conferma che la modalità sviluppatore è attiva.
- Nelle Opzioni sviluppatore, abilita il Debug USB.
Quindi, collega il tuo dispositivo alla tua workstation tramite USB. Se è la prima volta che ti connetti, apparirà un pop-up che chiede il permesso per consentire il debug.
Genera report bug
- Apri un terminale a riga di comando. Su Mac o Linux, usa l'app Terminale, e su Windows, usa la Riga di comando.
- Naviga nella cartella platform-tools dove si trova ADB usando il comando cd (ad esempio, ‘cd /Users/Username/Downloads/Tools’).
- Genera il report bug:
- Su Mac:
adb bugreport - Su Windows:
adb.exe bugreport
- Su Mac:
- Attendi qualche minuto per la generazione del report. Il file risultante verrà salvato nella cartella platform tools.
- Decomprimi il file.
- Trova la cartella tombstones con file come tombstone_00, tombstone_01 e simili.
- Invia i file tombstone a
support@osmand.net.
Utilizzo di dispositivi rootati o Android Studio Emulator
-
Con l'accesso root al tuo dispositivo, puoi aprire direttamente la cartella /data/tombstones.
-
In Android Studio, usa l'emulatore per navigare in Device File Explorer e trovare la cartella /data/tombstones. All'interno, troverai file denominati come tombstone_00, tombstone_01 e altri. Scarica questi file e inviali a
support@osmand.net.
Per maggiori dettagli sui report bug, fai riferimento alla documentazione Android.