Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Visual Studio App Center bylo vyřazeno 31. března 2025 s výjimkou funkcí Analýzy a diagnostiky, které se budou dál podporovat až do 30. června 2026. Další informace.
Android NDK umožňuje implementovat části aplikací pro Android pomocí jazyka C a C++. Můžete použít klientskou knihovnu Google Breakpad pro aplikace pro Android k příjmu platných zásobníkových stop v nativním kódu. Výpisy trasování zásobníku mohou obsahovat pouze adresy paměti. Nezobrazují názvy tříd, funkce, názvy souborů a čísla řádků, které jsou potřeba ke čtení a pochopení chyb. Pokud chcete získat přeložené adresy paměti pro aplikaci Android NDK, musíte nahrát symboly aplikace pro každé sestavení.
Informace o hlášení chybových ukončení sady NDK najdete v dokumentaci k sadě Android SDK pro aplikace pro Android nebo dokumentaci k sadě Unity SDK pro aplikace Unity.
Pokud chcete posílat chybové ukončení Breakpadu z jiných platforem do App Center, přečtěte si dokumentaci k nahrání vlastních chybových ukončení.
Nesymbolikované pády
Nesymbolikované pády jsou zobrazeny v sekci Diagnostika v App Center, takže můžete vidět některé podrobnosti, i když ještě nebyly nahrány symboly. Chybějící symboly z těchto chyb se zobrazí na kartě "Neznaménkované". Pokud se chybějící symboly nahrají, neskupinová skupina havárií bude nahrazena skupinou havárií, která je symbolikovaná.
Poznámka:
App Center nepodporuje symbolizaci rámců, které pocházejí ze systémových knihoven. Vzhledem k vysoké fragmentaci systémových binárních souborů pro Android a další platformy – které se můžou lišit v každé kombinaci verzí zařízení/operačního systému – App Center neposkytuje symboly pro systémové binární soubory a automaticky přeskakuje snímky ze systémových binárních souborů během symbolikace.
Vygenerujte soubor .zip pro nahrání
App Center má dva způsoby, jak načíst symboly potřebné k symbolizaci. App Center je může vygenerovat z nativních binárních souborů použitých v projektu nebo můžete symboly Breakpad nahrát přímo.
Možnost 1: Nahrání nativních binárních souborů
Všechny soubory .so z adresáře projektu obj/local/$ABI/ vložte do souboru .zip.
Možnost 2: Nahrání symbolů Breakpad
- Exportujte symboly pomocí nářaďové sady Breakpad, jak je popsáno v dokumentaci k Breakpadu v části Získání ladicích symbolů.
- Vytvořte soubor symbols.zip s následující strukturou:
Poznámka:
Pokud nahráváte symboly z macOS, musíte vyčistit symboly od všech nadbytečných složek, například složka __MACOS se vygeneruje a k jejímu odstranění můžete použít zip -d <symbols.zip> __MACOSX/\*.
$ unzip -l symbols.zip
Archive: symbols.zip
Length Date Time Name
-------- ---- ---- ----
0 07-22-13 15:07 symbols/
0 07-22-13 15:07 symbols/libnative.so/
0 07-22-13 15:07 symbols/libnative.so/EAC901FB6DDCCE8AED89E1A8E4A58360/
12468 07-22-13 15:07 symbols/libnative.so/EAC901FB6DDCCE8AED89E1A8E4A58360/libnative.so.sym
0 07-22-13 15:07 symbols/libnative.so/FDC5C9E715C4F16408C0B78F95855BF0/
12467 07-22-13 15:07 symbols/libnative.so/FDC5C9E715C4F16408C0B78F95855BF0/libnative.so.sym
-------- -------
24935 6 files
Nahrání symbolů
Poznámka:
Služba Sestavení a distribuce app Center může automaticky předávat symboly do diagnostické služby. Pokud k vytváření a automatické distribuci aplikace koncovým uživatelům používáte App Center, nemusíte soubory symbolů získávat a nahrávat ručně, jak je podrobně popsáno v následujících krocích.
Portál centra aplikací
- Přihlaste se do App Center a vyberte svou aplikaci.
- V nabídce vlevo přejděte do části Diagnostika a pak problémy.
- Pokud vaše aplikace ještě nenahlásila žádné chybové ukončení, budete muset k nahrání symbolů Breakpadu použít rozhraní API nebo příkazovou řádku.
- Pokud už vaše aplikace hlásila chybové ukončení, které potřebují symboly, zkontrolujte kartu Unsymbolicated a měla by existovat skupina verzí s chybějícími symboly, kliknutím na ni zobrazte nabídku pro nahrání souboru.
- Jakmile jsou symboly indexovány App Centerem, chybová hlášení budou pro vás symbolizována.
App Center API
Proces nahrávání symbolů prostřednictvím rozhraní API zahrnuje řadu tří volání rozhraní API: jedno pro přidělení místa na back-endu, jeden pro nahrání souboru a jeden pro aktualizaci stavu nahrávání. Tělo prvního volání rozhraní API by mělo být nastavené symbol_type na Breakpad.
- Aktivujte
POSTpožadavek na rozhraní API symbol_uploads. Toto volání přidělí místo na našem serverovém systému pro váš soubor a vrátísymbol_upload_idvlastnost aupload_urlvlastnost.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
-
upload_urlPomocí vlastnosti vrácené z prvního kroku vytvořte požadavek s hlavičkouPUT:"x-ms-blob-type: BlockBlob"a zadejte umístění souboru na disku. Toto volání nahraje soubor do úložiště na našem backendu. Přečtěte si další informace o hlavičkách požadavku PUT Blob .
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
- Vytvořte požadavek na API
PATCHpomocí vrácené vlastnosti z prvního kroku. V textu požadavku určete, jestli chcete nastavit stav nahrávání nacommittedproces nahrávání (úspěšně dokončeno), neboaborted(neúspěšně dokončeno).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Poznámka:
Rozhraní API pro nahrávání symbolů nefunguje u souborů větších než 256 MB. K nahrání těchto souborů použijte rozhraní příkazového řádku App Center. Rozhraní příkazového řádku App Center můžete nainstalovat podle pokynů v úložišti rozhraní příkazového řádku App Center.
Rozhraní příkazového řádku App Center
Soubory symbolů můžete nahrát také pomocí rozhraní příkazového řádku:
appcenter crashes upload-symbols --breakpad {symbols file}
Ignorování symbolů
Pokud App Center neobsahuje všechny soubory symbolů potřebné ke kompletní symbolizaci hlášení o chybách, jsou chyby uvedeny na kartě Nesymbolizované. Požadované symboly mohou být nahrány z této stránky, pokud k nim máte přístup.
Pokud symboly nemůžete nahrát, můžete je označit jako Ignorované tak, že vyberete řádky v tabulce a kliknete na tlačítko Ignorovat verze . Toto tlačítko instruuje App Center, aby zpracovával pády a symbolikoval je s využitím dostupných symbolů. Jakmile zpracování dokončí, zobrazí se na záložce Pády částečně symbolizováno. Nové chyby, které také závisejí na stejných ID symbolů označených jako ignorované, vynechají kartu Unsymbolicated, jakmile projdou systémem.