Megosztás a következőn keresztül:


Android NDK

Fontos

A Visual Studio App Center 2025. március 31-én megszűnt, kivéve az Elemzési és diagnosztikai funkciókat, amelyek 2026. június 30-ig továbbra is támogatottak lesznek. Tudj meg többet.

Az Android NDK lehetővé teszi androidos alkalmazások részeinek implementálását C és C++ használatával. Android-alkalmazásaihoz a Google Breakpad klienstár segítségével használhat érvényes veremnyomokat a natív kódban. A verem nyomkövetései csak memóriacímeket tartalmazhatnak. Nem jelennek meg az összeomlások olvasásához és megértéséhez szükséges osztálynevek, metódusok, fájlnevek és sorszámok. Az Android NDK-alkalmazás memóriacímeinek lefordításához minden buildhez fel kell töltenie az alkalmazásszimbólumokat.

Az NDK összeomlásainak jelentéséhez tekintse meg az Android-alkalmazások Android SDK-dokumentációját vagy a Unity-alkalmazások Unity SDK-dokumentációját .

Ha Breakpad összeomlásokat szeretne más platformokról küldeni az App Centerhez, tekintse meg az egyéni összeomlások feltöltésének dokumentációját.

Nem szimbolizált hibák

A szimbólum nélküli összeomlások az App Center diagnosztika szakaszában jelennek meg, így a szimbólumok feltöltése előtt is megtekintheti néhány részletüket. A hiányzó szimbólumok ezekből az összeomlásokból a "szimbólum nélküliek" fülön jelennek meg. Ha a hiányzó szimbólumok fel vannak töltve, a szimbólum nélküli összeomlási csoportot egy szimbólumokkal ellátott összeomlási csoport váltja fel.

Megjegyzés:

Az App Center nem támogatja a rendszerkódtárakból származó keretek szimbolikus megjelenítését. Tekintettel az Android és más platformok rendszer bináris fájljainak nagy töredezettségére – ami bármely eszköz/operációs rendszer verziókombinációján eltérő lehet – az App Center nem biztosít szimbólumokat a rendszer bináris fájljaihoz, és automatikusan kihagyja a rendszer bináris fájljainak kereteit szimbolikus formában.

Hozz létre egy .zip fájlt a feltöltéshez

Az App Center kétféleképpen tudja lekérni a szimbolizáláshoz szükséges szimbólumokat. Az App Center létrehozhatja őket a projektben használt natív bináris fájlokból, vagy közvetlenül feltöltheti a Töréspad szimbólumokat.

1. lehetőség: Natív bináris fájlok feltöltése

Helyezze az összes .so fájlt a projekt obj/local/$ABI/ könyvtárából egy .zip fájlba.

2. lehetőség: Breakpad szimbólumok feltöltése

  1. A szimbólumok kiíratása a Breakpad eszközlánc használatával, a Breakpad dokumentációjában leírt "A hibakeresési szimbólumok beszerzése" című szakasz szerint.
  2. Hozzon létre egy symbols.zip fájlt a következő struktúrával:

Megjegyzés:

Ha macOS-ről tölti fel a szimbólumokat, akkor meg kell tisztítania őket a felesleges mappáktól, például a generált __MACOS mappát el kell távolítani, amit a zip -d <symbols.zip> __MACOSX/\* használatával tehet meg.

$ 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

Szimbólumok feltöltése

Megjegyzés:

Az App Center buildelési és terjesztési szolgáltatása automatikusan továbbíthatja a szimbólumokat a Diagnosztikai szolgáltatásnak. Ha az App Center használatával készíti el és osztja el automatikusan az alkalmazást a végfelhasználók között, nem kell manuálisan beszereznie és feltöltenie a szimbólumfájlokat az alábbi lépésekben leírtak szerint.

App Center Portál

  1. Jelentkezzen be az App Centerbe, és válassza ki az alkalmazást.
  2. A bal oldali menüben keresse meg a Diagnosztika , majd a Problémák szakaszt.
  3. Ha az alkalmazás még nem jelentett összeomlást, az API-val vagy a parancssori felülettel kell feltöltenie a breakpad szimbólumokat.
  4. Ha az alkalmazás már jelentett olyan összeomlásokat, amelyek szimbólumokat igényelnek, ellenőrizze a Szimbólummentes lapfület, és ott egy szimbólumok nélküli verziócsoportnak kell lennie. Kattintson rá a fájl feltöltéséhez szükséges menü megjelenítéséhez.
  5. Miután az App Center indexelte a szimbólumokat, az összeomlások az Ön számára lesznek jelképezve.

App Center API

A szimbólumok API-n keresztüli feltöltésének folyamata három API-hívásból áll: az egyik a háttérrendszeren lévő hely lefoglalása, egy a fájl feltöltése, a másik pedig a feltöltés állapotának frissítése. Az első API-hívás törzsének a következőre kell állítania symbol_type : Breakpad.

  1. Küldjön egy kérést POST a symbol_uploads API-nak. Ez a hívás helyet biztosít a fájl számára a háttérrendszerünkön, és visszaad egy symbol_upload_id és egy upload_url tulajdonságot.
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}'
  1. Az upload_url tulajdonság használatával küldjön egy PUT kérést a fejléchez: "x-ms-blob-type: BlockBlob" és adja meg a fájl helyét a lemezen. Ez a hívás feltölti a fájlt a háttértárfiókokba. További információ a PUT Blob-kérelem fejléceiről .
curl -X PUT '{upload_url}' \
    -H 'x-ms-blob-type: BlockBlob' \
    --upload-file '{path to file}'
  1. Küldjön kérést PATCH az symbol_uploads API-nak az symbol_upload_id első lépésben visszaadott tulajdonság használatával. A kérelem törzsében adja meg, hogy a feltöltés állapotát a feltöltési committed folyamat (sikeresen befejezett) állapotára szeretné-e beállítani, vagy aborted (sikertelenül befejeződött).
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" }'

Megjegyzés:

A szimbólumfeltöltési API nem működik a 256 MB-nál nagyobb fájlok esetében. Ezeket a fájlokat az App Center parancssori felületével töltheti fel. Az App Center parancssori felületét az App Center CLI-adattár utasításait követve telepítheti.

App Center CLI

A parancssori felülettel szimbólumfájlokat is feltölthet:

appcenter crashes upload-symbols --breakpad {symbols file}

Szimbólumok figyelmen kívül hagyása

Ha az App Center nem rendelkezik az összes olyan szimbólumfájllal, amely teljes mértékben jelképezi az összeomlási jelentéseket, az összeomlások a Nem található lapon jelennek meg. Ha rendelkezik hozzáféréssel ezekhez a szimbólumokhoz, a rendszer feltölti a szükséges szimbólumokat erről a lapról.

Ha nem tudja feltölteni a szimbólumokat, megjelölheti őket figyelmen kívül hagyvaként , ha kijelöli a táblázat sorait, és a Verziók figyelmen kívül hagyása gombra kattint. Ez a gomb arra utasítja az App Centert, hogy dolgozza fel az összeomlásokat, és a lehető legteljesebben szimbolizálja őket a fájl szimbólumaival. Miután befejezték a feldolgozást, azok részben szimbolizálva jelennek meg az Összeomlások lapon. Az új összeomlások, amelyek ugyanazoktól a figyelmen kívül hagyott szimbólumazonosítóktól függenek, átugorják a szimbólum nélküli lapot, ahogy beérkeznek és keresztülhaladnak a rendszeren.