Questa pagina fornisce assistenza per la risoluzione dei problemi e risposte alle domande frequenti sull'utilizzo di Crashlytics. Se non riesci a trovare ciò che stai cercando o hai bisogno di ulteriore assistenza, contatta l'assistenza Firebase .
Risoluzione dei problemi generali/FAQ
Se non visualizzi utenti senza arresti anomali, registri breadcrumb e/o avvisi sulla velocità, ti consigliamo di controllare la configurazione della tua app per Google Analytics.
Assicurati di aver abilitato Google Analytics nel tuo progetto Firebase.
Assicurati che la condivisione dei dati sia abilitata per Google Analytics nella pagina Integrazioni > Google Analytics della console Firebase. Tieni presente che le impostazioni di condivisione dei dati vengono visualizzate nella console di Firebase ma gestite nella console di Google Analytics.
Oltre all'SDK Firebase Crashlytics, assicurati di aver aggiunto l'SDK Firebase per Google Analytics alla tua app ( iOS+ | Android ).
Assicurati di utilizzare le versioni più recenti per tutti i tuoi SDK Firebase ( iOS+ | Android ).
Verifica in particolare di utilizzare almeno le seguenti versioni dell'SDK di Firebase per Google Analytics: iOS+ — v6.3.1+ (v8.9.0+ per macOS e tvOS) | Android — v17.2.3+(BoM v24.7.1+) .
Il valore senza arresti anomali rappresenta la percentuale di utenti che hanno interagito con la tua app ma non hanno subito arresti anomali in un periodo di tempo specifico.
Ecco la formula per calcolare la percentuale di utenti senza arresti anomali. I suoi valori di input sono forniti da Google Analytics.
CRASH_FREE_USERS_PERCENTAGE = 1 - ( CRASHED_USERS / ALL_USERS ) x 100
Quando si verifica un arresto anomalo, Google Analytics invia un tipo di evento
app_exception
e CRASHED_USERS rappresenta il numero di utenti associati a tale tipo di evento.ALL_USERS rappresenta il numero totale di utenti che hanno interagito con la tua app nel periodo di tempo selezionato dal menu a discesa in alto a destra nella dashboard di Crashlytics.
La percentuale di utenti senza arresti anomali è un'aggregazione nel tempo , non una media.
Ad esempio, immagina che la tua app abbia tre utenti; li chiameremo Utente A, Utente B e Utente C. La tabella seguente mostra quali utenti hanno interagito con la tua app ogni giorno e quali di questi utenti hanno avuto un arresto anomalo quel giorno:
Lunedi | Martedì | Mercoledì | |
---|---|---|---|
Utenti che hanno interagito con la tua app | A,B,C | A,B,C | A, B |
Utente che ha avuto un arresto anomalo | C | B | UN |
Mercoledì, la percentuale di utenti senza arresti anomali è del 50% (1 utente su 2 non ha avuto arresti anomali).
Due dei tuoi utenti hanno interagito con la tua app mercoledì, ma solo uno di loro (l'utente B) non ha avuto arresti anomali.Negli ultimi 2 giorni, la percentuale di utenti senza arresti anomali è stata del 33,3% (1 utente su 3 non ha avuto arresti anomali).
Tre dei tuoi utenti hanno interagito con la tua app negli ultimi due giorni, ma solo uno di loro (Utente C) non ha avuto arresti anomali.Negli ultimi 3 giorni, la percentuale di utenti senza arresti anomali è stata dello 0% (0 utenti su 3 non hanno avuto arresti anomali).
Tre dei tuoi utenti hanno interagito con la tua app negli ultimi tre giorni, ma nessuno di loro ha avuto arresti anomali.
Le note consentono ai membri del progetto di commentare problemi specifici con domande, aggiornamenti di stato, ecc.
Quando un membro del progetto pubblica una nota, viene etichettata con l'email del proprio account Google. Questo indirizzo email è visibile, insieme alla nota, a tutti i membri del progetto con accesso per visualizzare la nota.
Di seguito viene descritto l'accesso necessario per visualizzare, scrivere ed eliminare le note:
I membri del progetto con uno dei seguenti ruoli possono visualizzare ed eliminare le note esistenti e scrivere nuove note su un problema.
- Proprietario o redattore del progetto, amministratore di Firebase, amministratore della qualità o amministratore di Crashlytics
I membri del progetto con uno dei seguenti ruoli possono visualizzare le note pubblicate su un problema, ma non possono eliminare o scrivere una nota.
- Visualizzatore progetto , Visualizzatore Firebase , Visualizzatore qualità o Visualizzatore Crashlytics
Integrazioni
Se il tuo progetto utilizza Crashlytics insieme a Google Mobile Ads SDK, è probabile che i segnalatori di arresti anomali stiano interferendo durante la registrazione dei gestori di eccezioni. Per risolvere il problema, disattiva la segnalazione degli arresti anomali nell'SDK Mobile Ads chiamando disableSDKCrashReporting
.
Dopo aver collegato Crashlytics a BigQuery, i nuovi set di dati che crei si trovano automaticamente negli Stati Uniti, indipendentemente dalla posizione del tuo progetto Firebase.
Supporto della piattaforma
Problemi regrediti
Un problema ha avuto una regressione quando in precedenza l'avevi chiuso, ma Crashlytics riceve un nuovo rapporto che il problema si è ripresentato. Crashlytics riapre automaticamente questi problemi regrediti in modo che tu possa risolverli in modo appropriato per la tua app.
Ecco uno scenario di esempio che spiega come Crashlytics classifica un problema come regressione:
- Per la prima volta in assoluto, Crashlytics riceve un rapporto sugli arresti anomali relativi a Crash "A". Crashlytics apre un problema corrispondente per quell'arresto anomalo (Problema "A").
- Correggi rapidamente questo bug, chiudi il problema "A" e poi rilasci una nuova versione della tua app.
- Crashlytics riceve un altro rapporto sul problema "A" dopo che hai chiuso il problema.
- Se il rapporto proviene da una versione dell'app di cui Crashlytics era a conoscenza quando hai chiuso il problema (il che significa che la versione aveva inviato un rapporto sugli arresti anomali per qualsiasi arresto anomalo), allora Crashlytics non considererà il problema come regredito. La questione rimarrà chiusa.
- Se la segnalazione proviene da una versione dell'app di cui Crashlytics non era a conoscenza quando hai chiuso il problema (il che significa che la versione non aveva mai inviato alcuna segnalazione di arresto anomalo per nessun arresto anomalo), allora Crashlytics considera il problema regredito e lo riaprirà .
Quando un problema regredisce, inviamo un avviso di rilevamento della regressione e aggiungiamo un segnale di regressione al problema per informarti che Crashlytics ha riaperto il problema. Se non vuoi che un problema si riapra a causa del nostro algoritmo di regressione, "silenzia" il problema invece di chiuderlo.
Se un rapporto proviene da una vecchia versione dell'app che non aveva mai inviato alcun rapporto sugli arresti anomali quando hai chiuso il problema, allora Crashlytics considera il problema regredito e lo riaprirà.
Questa situazione può verificarsi nella situazione seguente: hai corretto un bug e rilasciato una nuova versione della tua app, ma hai ancora utenti su versioni precedenti senza la correzione del bug. Se, per caso, una di quelle versioni precedenti non avesse mai inviato alcun rapporto sugli arresti anomali quando hai chiuso il problema e quegli utenti iniziassero a riscontrare il bug, allora quei rapporti sugli arresti anomali attiverebbero un problema regredito.
Se non vuoi che un problema si riapra a causa del nostro algoritmo di regressione, "silenzia" il problema invece di chiuderlo.