Receber relatórios de erros legíveis no painel do Crashlytics
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
iOS+ (plataformas da Apple)
Em apps da plataforma Apple que usam o SDK do Crashlytics para Unity 8.2.0 ou versões mais recentes, o plug-in do editor do Firebase
para Unity configura automaticamente seu projeto do Xcode para fazer upload
de símbolos. Faça o download da versão mais recente.
Android
Para apps Android, o SDK do Crashlytics para Unity 8.6.1 ou versões mais recentes inclui automaticamente
os relatórios de erros do NDK, que permitem ao Crashlytics relatar automaticamente as falhas do
IL2CPP
do Unity no Android. No entanto, para ver stack traces simbolizados para falhas da
biblioteca nativa no painel do Crashlytics, faça upload das informações de símbolos no
tempo de build usando a CLI do Firebase.
(somente para apps que usam o nível 30 da API do Android ou níveis acima desse) Atualize o modelo AndroidManifest.xml
do seu app para desativar a inclusão de tags do ponteiro:
Marque a caixa de seleção de Android Player Settings > Publishing Settings >
Build > Custom Main Manifest.
Abra o modelo de manifesto localizado em
Assets/Plugins/Android/AndroidManifest.xml.
(apenas para apps que usam uma versão do SDK anterior à
8.8.0) Adicione o
seguinte atributo à tag do aplicativo:
<application android:allowNativeHeapPointerTagging="false" ... />
Crie seu projeto e faça o upload dos símbolos.
Siga estas etapas sempre que você criar um build de lançamento ou qualquer build
com stack traces que você queira simbolizar no
console do Firebase.
Na caixa de diálogo Build Settings, siga um destes procedimentos:
Exporte para o Android Studio para criar seu projeto ou
Crie seu APK diretamente no Editor do Unity.
Antes de começar a criar, verifique se a caixa de seleção Create symbols.zip está
marcada na caixa de diálogo Build Settings.
Quando o build estiver concluído, gere um arquivo de símbolos compatível com o Crashlytics
e faça upload dele para os servidores do Firebase executando o
comando a seguir na CLI do Firebase:
FIREBASE_APP_ID: seu ID do app Android do Firebase (não o
nome do pacote)
Exemplo de ID do app Android do Firebase: 1:567383003300:android:17104a2ced0c9b9b
Precisa encontrar o ID do app Firebase?
Veja duas maneiras de encontrar o ID do app Firebase:
No arquivo google-services.json, o ID do app é o
valor mobilesdk_app_id; ou
No console do Firebase, acesse as
Configurações do projeto.
Role a tela para baixo até o card Seus apps e clique no app Firebase
que você quer para encontrar o ID respectivo.
PATH/TO/SYMBOLS: o caminho para o arquivo de símbolos gerado pela
CLI
Exportado para um projeto do Android Studio:
PATH/TO/SYMBOLS é o diretório unityLibrary/symbols,
que é criado na raiz do projeto exportado depois que você compila o app
usando o Gradle ou o Android Studio.
Crie o APK diretamente do Unity:
PATH/TO/SYMBOLS é o caminho do arquivo de símbolo compactado,
gerado no diretório raiz do projeto quando o build foi concluído
(por exemplo:
myproject/myapp-1.0-v100.symbols.zip).
Veja opções avançadas para usar o
comando da CLI do Firebase para gerar e fazer upload de arquivos de símbolos
Flag
Descrição
--generator=csym
Usa o gerador de arquivos de símbolo legado do cSYM em vez do
gerador padrão do Breakpad.
Não recomendado. Recomendamos o uso do gerador de
arquivos de símbolo padrão do Breakpad.
--generator=breakpad
Usa o gerador de arquivos de símbolo do Breakpad
O padrão para a geração de arquivos de símbolo é o Breakpad.
Use essa sinalização apenas se você tiver adicionado
symbolGenerator { csym() }
à configuração do build e quiser substitui-la para utilizar
o Breakpad.
--dry-run
Gera os arquivos de símbolo, mas não faz upload deles
Essa sinalização é útil se você quiser inspecionar o conteúdo dos
arquivos enviados.
[null,null,["Última atualização 2025-08-19 UTC."],[],[],null,["\u003cbr /\u003e\n\niOS+ Android Flutter Unity \n\n\u003cbr /\u003e\n\nBy default, Firebase Crashlytics automatically processes your debug symbol\n(dSYM) files to give you deobfuscated and human-readable crash reports. You\nusually configure this behavior during the initial setup of Crashlytics in\nyour app, specifically by\n[adding a run script](/docs/crashlytics/get-started?platform=ios#set-up-dsym-uploading)\nthat automatically uploads dSYM files during your app's build phase.\n\nUnfortunately, there are a few cases that could cause your automatic dSYM files\nupload to fail. This guide provides some ways to troubleshoot when\nCrashlytics can't locate your app's dSYM files.\n\nMake sure Xcode can automatically process dSYMs and upload the files\n\nWhen setting up Crashlytics in your app, you\n[configured a run script](/docs/crashlytics/get-started?platform=ios#set-up-dsym-uploading)\nto automatically process dSYMs and upload the files.\n\nMake sure that your configuration for the Crashlytics run script is\nup-to-date with the new requirements which started with Xcode 15. If your\nconfiguration isn't up-to-date, you might be getting the following error: \n\n`error: Info.plist Error Unable to process Info.plist at path ...`.\n\nSpecifically, Xcode 15 and later requires that you provide a more complete set\nof file locations. For your Crashlytics run script\n(`firebase-ios-sdk/Crashlytics/run`), make sure that you have the following\nsetup:\n\n1. Click the **Build Phases** tab, and then expand the *Run Script* section.\n\n2. In the *Input Files* section, make sure you have the paths for the locations\n of the following files:\n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}\n ``` \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}\n ``` \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist\n ``` \n\n ```\n $(TARGET_BUILD_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist\n ``` \n\n ```\n $(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)\n ```\n If you have `ENABLE_USER_SCRIPT_SANDBOXING=YES` and `ENABLE_DEBUG_DYLIB=YES` in your project build settings, then include the following: \n\n ```\n ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}.debug.dylib\n ```\n **Understand why the locations of these files are\n needed**\n\n Xcode looks in the specified locations for these input files to ensure\n that the build files are available for the run script. Also, if\n *User Script Sandboxing* is enabled, Xcode only allows the run\n script to access files specified in the *Input Files*.\n - Providing the location of your project's dSYM files enables Crashlytics to process dSYMs.\n - Providing the location of your app's built `GoogleService-Info.plist` file enables Crashlytics to associate the dSYMs with your Firebase app.\n - Providing the location of your app's executable allows the run script to prevent duplicate uploads of the same dSYM. Note that app binaries are *not uploaded*.\n\nCheck if Xcode is producing dSYMs\n\nMore often than not, dSYM files go missing because Xcode simply isn't producing\nthem. When an upload fails, Crashlytics displays a \"Missing dSYM\" alert in\nthe Firebase console. If you get this alert, first check that Xcode is\nproducing the correct dSYM for every build:\n\n1. Open your project in Xcode, and then select the project file in the Xcode\n Navigator.\n\n2. Select your main build target.\n\n3. Open the target's **Build Settings** tab, and then click **All**.\n\n4. Search for `debug information format`.\n\n5. Set **Debug Information Format** to **DWARF with dSYM File** for all\n your build types.\n\n6. Rebuild your app.\n\nYour crash reports should now appear in the\n[Crashlytics dashboard](https://console.firebase.google.com/project/_/crashlytics). If the problem persists or you\nencounter other errors, try [locating your dSYMs](#locate) and\n[uploading them to Crashlytics manually](#upload-dsyms).\n\nLocate your dSYMs on a local machine\n\nRun the following command to display all your dSYMs' UUIDs on your machine and\nsearch for the missing dSYM: \n\n```text\nmdfind -name .dSYM | while read -r line; do dwarfdump -u \"$line\"; done\n```\n\nOnce you find the dSYM, [manually upload it to Crashlytics](#upload-dsyms).\nIf the `mdfind` command doesn't return any results, you can look in the\n`Products` directory where your `.app` lives (by default, the `Products`\ndirectory is located in `Derived Data`). If your app is released to production,\nyou can also look for its dSYM in the `.xcarchive` directory on disk:\n\n1. In Xcode, open the **Organizer** window, and then select your app from the\n list. Xcode displays a list of archives for your project.\n\n2. Control-click an archive to view it in Finder. Control-click it again, and\n then click **Show Package Contents**.\n\n3. Within `.xcarchive` is a dSYMs directory that contains dSYMs generated as\n part of Xcode's archiving process.\n\nUpload your dSYMs\n\nCrashlytics supports multiple ways to upload your dSYMs files, either\n[automatically](#auto-upload-dsyms) or [manually](#manually-upload-dsyms).\n\n*(Recommended)* Automatically process your dSYMs and upload the files\n\nWhen you initially set up Crashlytics, you most likely configured this\nautomatic upload behavior for your app. However, if automatic uploads are\nfailing, [check that your configuration is correct](#check-input-files-setup).\n\nManually upload your dSYM files\n\nIf automatic uploads are failing, you can manually upload your dSYM files using\neither of the following options.\n\n- **Option 1** : Use the console-based \"Drag and Drop\" option to upload a zip\n file containing your dSYM files (go to the\n Firebase console \\\u003e\n [Crashlytics](https://console.firebase.google.com/project/_/crashlytics) \\\u003e\n *dSYMs* tab).\n\n- **Option 2** : Use the `upload-symbols` script that you can call from\n anywhere in your build process to manually upload your dSYM files. To run the\n `upload-symbols` script, use either of the following options:\n\n - **Option A**: Include the following line in your build process:\n\n ```gdscript\n find dSYM_DIRECTORY -name \"*.dSYM\" | xargs -I \\{\\} $PODS_ROOT/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p PLATFORM \\{\\}\n ```\n - **Option B**: Run the script directly from your terminal:\n\n ```\n /PATH/TO/PODS/DIRECTORY/FirebaseCrashlytics/upload-symbols -gsp /PATH/TO/GoogleService-Info.plist -p ios /PATH/TO/dSYMs\n ```\n\n For usage notes and additional instructions about this script, run\n `upload-symbols` with the `--help` parameter."]]