Verzió kiadása

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.

Töltse fel az alkalmazás bináris csomagját az App Centerbe a terjesztéséhez. Az App Center támogatja az Android, iOS, macOS, Windows és egyéni operációsrendszer-alkalmazások csomagterjesztését. A kiadásokat eloszthatja az egyes tesztelőknek vagy tesztelők csoportjainak. iOS- és Android-alkalmazások esetén olyan áruházakban is kiadhat, mint a Google Play, az App Store és az Intune. Lásd : Közzététel fogyasztói és nagyvállalati üzletekben.

Ezen az oldalon megtudhatja, hogyan hozhatja létre a kiadáshoz szükséges bináris fájlt, és hogyan töltheti fel, valamint teheti elérhetővé a csoportok számára a portál, a parancssori felület (CLI) és az alkalmazásprogramozási felület (API) használatával.

Az Azure DevOps vagy a Jenkins is használható:

Alkalmazás bináris csomag létrehozása

Először bináris fájlba kell csomagolnia az alkalmazást a kiadáshoz. Ezt a fájlt manuálisan is létrehozhatja.

Az alábbi szakaszok ismertetik, hogyan hozhat létre fájlokat az App Center által támogatott összes alkalmazástípushoz a disztribúcióhoz.

Megjegyzés:

Ha archívumot (.zip, .ipa és egyéb) szeretne feltölteni, akkor az alkalmazás teljes tömörítetlen méretének 4 GB-nál kisebbnek kell lennie.

Android

Android esetén elő kell állítania egy aláírt alkalmazáscsomagot vagy APK-fájlt. Ennek a folyamatnak a részleteiért tekintse meg az alkalmazás kiadásra való előkészítéséről szóló hivatalos Google-dokumentációt.

  1. Győződjön meg arról, hogy frissítette a jegyzékfájlt , és megfelelően konfigurált Gradle-buildel rendelkezik.
  2. Az Android Studióban válassza azAláírt csomag létrehozása /APK létrehozása> lehetőséget, és kövesse a varázsló lépéseit az alkalmazáscsomag vagy az APK létrehozásához.

Az Android Studio felépíti az app csomagokat a projektnév/modul-neve/build/outputs/bundle/ könyvtárban, és az APK-kat a projektnév/modul-neve/build/outputs/apk/ könyvtárban.

Megjegyzés:

Az Android Application Bundle (AAB) terjesztésekor az App Center létrehoz egy univerzális APK-t, aláírja egy generált aláíró kulccsal, és elosztja azt egy eszközön.

iOS

iOS esetén IPA-csomagot kell létrehoznia az alkalmazáshoz. A folyamat részleteiért tekintse meg az Apple hivatalos dokumentációját.

  1. Regisztrálja az UDID-ket az összes hardvereszközre a kiépítési profilban.
  2. Az Xcode-ban lépjen aTermékarchívumba> az alkalmazás archiválásához.
  3. Exportálja az archívumot a megfelelő kiépítési profillal.

macOS

MacOS esetén elő kell állítania egy alkalmazáscsomagot. Az App Center támogatja a .app.zip, .pkg vagy .dmg típusú alkalmazáscsomagok kiadását. A folyamat részleteiért tekintse meg az Apple macOS hivatalos dokumentációját.

  1. Regisztráljon egyetlen eszközt , vagy regisztráljon több eszközt az Apple fejlesztői fiókjában.
  2. Az Xcode-ban lépjen aTermékarchívumba> az alkalmazás archiválásához.
  3. Exportálja az archívumot a megfelelő kiépítési profillal.

Windows

Az App Center támogatja a windowsos alkalmazáscsomagok kiadását .appx, , .appxbundle, .appxupload.msi, .msix.msixbundle, .msixuploadvagy .zip. Az alkalmazás AppX- vagy MSIX-formátumban való csomagolásának részletes leírását a Microsoft UWP hivatalos dokumentációjában találja.

Egyéni operációs rendszer

Archiválja alkalmazásainak buildjét egyéni operációs rendszerrel a .zip formátumban.

A csomag terjesztése

Megjegyzés:

A letöltéshez szükséges fájlokat tartalmazó install.appcenter.ms URL-címek nyilvánosan elérhetők.

Ha csomagokat szeretne terjeszteni az App Centerrel, nyissa meg az App Centert, nyissa meg az alkalmazást, majd nyissa meg aCsoportok> lehetőséget, és válassza az Új kiadás lehetőséget. Kövesse a varázsló lépéseit. Új kiadás terjesztése

Az első lépésben válassza ki a kiadási területet a feltölteni kívánt fájl megkereséséhez, vagy húzza a fájlt a területre. Az alkalmazás operációs rendszerétől és a fájlkiterjesztéstől függően az App Center megkérheti, hogy adjon meg egy verziót és egy buildszámot a kiadáshoz. Adja meg az adatokat, és válassza a Tovább gombot.

A kiadás részeként kibocsátási megjegyzéseket is felvehet akár egyszerű szöveges, vagy Markdown formátumban. Válassza a Tovább gombot.

A kiadást több terjesztési csoportra vagy tesztelőre is megcélzhatja. Az App Center elérhetővé teszi ezt a kiadást a tesztelők és a kiválasztott csoportokhoz tartozó felhasználók számára. Válassza a Tovább gombot.

Kiadási célhelyek beállítása

IOS-alkalmazás kiadásakor automatikusan üzembe helyezheti a tesztelők eszközeit. Válassza a Tovább gombot.

Tekintse át a kiadást. Ha az alkalmazás az Distribute SDK-t használja, az App Centert úgy konfigurálhatja, hogy kötelezővé tegye a kiadást. Amikor az App Center kiad egy kiadást, e-mailben értesítést küld az új verzióról a célhelyen beállított összes tesztelőnek. Dönthet úgy, hogy nem értesíti a tesztelőket a véleményezés lapon. Végül válassza az Elterjesztés lehetőséget a fájl tesztelők számára való kiadásához.

Terjesztés az App Center parancssori felületével

Figyelmeztetés

A funkció használatához az App Center CLI 2.7 vagy újabb verziójára van szükség.

Ossza el a kiadást az appcenter distribute releaseApp Center parancssori felületének parancsával. Az alábbi példaparancs egy ~/releases/my_app-23.ipa nevű fájlt oszt el a Beta testers alkalmazás My-App csoportjának, amelyet David birtokol.

appcenter distribute release --app David/My-App --file ~/releases/my_app-23.ipa --group "Beta testers"

Terjesztés az API használatával

A kiadás terjesztéséhez meghívhatja az App Center API-t. Az alábbi megközelítés egy minimális munkamódszer leírására szolgál, számos feladat további testreszabásra vagy automatizálásra is alkalmas.

A minta implementációt itt tekintheti meg: https://github.com/microsoft/appcenter-Xamarin.UITest-Demo/blob/main/ac-distribute.sh

Előfeltételek

  • A feltöltendő és terjesztendő alkalmazáscsomag.
  • API-jogkivonat beszerzése. Egy API-jogkivonatot használunk az Összes App Center API-hívás hitelesítéséhez.
  • A terjesztési csoport neve (nem kötelező, ha hiányzik vagy érvénytelen, a feltöltés továbbra is befejeződik)
  • Azonosítsa a kiadást terjeszteni kívánt alkalmazás {owner_name} és {app_name} jellemzőit. Ezeket az azonosítókat az API-hívások URL-címe használja. Egy felhasználó által birtokolt alkalmazás esetén az App Center URL-címe a következőképpen nézhet ki: https://appcenter.ms/users/Example-User/apps/Example-App. Itt, az {owner_name}Example-User és az {app_name}Example-App. Egy szervezet tulajdonában lévő alkalmazás esetén az URL-cím lehet https://appcenter.ms/orgs/Example-Org/apps/Example-App , és az {owner_name} is lehet Example-Org.
Új kiadás feltöltése

Töltsön fel egy új kiadást az alábbi szekvenciális API-hívások használatával:

  1. Új kiadás feltöltésének létrehozása: A végpont, amelyet hívni kell, a POST /v0.1/apps/{owner_name}/{app_name}/uploads/releases

        OWNER_NAME="Example-Org"
        APP_NAME="Example-App"
        API_TOKEN="Example-Token"
    
        curl -X POST "https://api.appcenter.ms/v0.1/apps/$OWNER_NAME/$APP_NAME/uploads/releases" -H  "accept: application/json" -H  "X-API-Token: $API_TOKEN" -H  "Content-Type: application/json" -H "Content-Length: 0"
    

    A válasz így fog kinézni, az egyes felhasználások egyedi adatainak lecserélésével {VARIABLE_NAME} :

         {
             "id": "{ID}",
             "package_asset_id": "{PACKAGE_ASSET_ID}",
             "upload_domain": "https://file-aks.appcenter.ms",
             "token": "{TOKEN}",
             "url_encoded_token": "{URL_ENCODED_TOKEN}"
         }
    
  2. Másolja ki a paramétereket a válaszból az előző lépésben, mivel a legtöbb ilyen paramétert a következő lépésben használja, beleértve a > package_asset_id paramétert upload_domainurl_encoded_tokenis.

    Határozza meg az alkalmazáscsomag méretét bájtban. Ajánlott olyan parancsot használni, amely wc -c ExampleApp.ipa pontos bájtszámot ad meg.

    Állítsa be az MIME Type a content_type az alkalmazás alapján:

    • Az Android .apk a szállító típusát használja application/vnd.android.package-archive
    • Az Android .aab a szállító típusát használja application/x-authorware-bin
    • Az iOS az általános típust használja application/octet-stream

    Az utolsó parancsnak így kell kinéznie:

    FILE_NAME="ExampleApp.apk"
    FILE_SIZE_BYTES=$(wc -c $RELEASE_FILE_LOCATION | awk '{print $1}')
    APP_TYPE='application/vnd.android.package-archive' # iOS uses `application/octet-stream` instead.
    
    METADATA_URL="https://file-aks.appcenter.ms/upload/set_metadata/$PACKAGE_ASSET_ID?file_name=$FILE_NAME&file_size=$FILE_SIZE_BYTES&token=$URL_ENCODED_TOKEN&content_type=$APP_TYPE"
    
     curl -s -d POST -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" "$METADATA_URL"
    

    A visszaadott kimenetnek így kell kinéznie:

     {
         "error":false,
         "id":"{PACKAGE_ASSET_ID}",
         "chunk_size":4194304,
         "resume_restart":false,
         "chunk_list":[1,2,3,4,5],
         "blob_partitions":1,
         "status_code":"Success"
     }
    
  3. chunk_size A testre nem szabható érték használatával az alkalmazásfeltöltést szekvenciális adattömbökre bonthatja az Elosztott fájlba való feltöltéshez. A split segédprogramot például így használhatja:

    split -b $CHUNK_SIZE $RELEASE_FILE_LOCATION temp/split
    

    Ez a parancs szekvenciális fájlokat hoz létre a temp , splitaastb. nevű splitabkönyvtárban. Minden fájl fel van osztva a korláton chunk_size belül.

  4. Ezután fel kell töltenie az osztott alkalmazáscsomag minden egyes adattömbét a megfelelő blokktal:

    BLOCK_NUMBER=0
    
    for i in temp/*
    do
        BLOCK_NUMBER=$(($BLOCK_NUMBER + 1))
        CONTENT_LENGTH=$(wc -c "$i" | awk '{print $1}')
    
        UPLOAD_CHUNK_URL="https://file-aks.appcenter.ms/upload/upload_chunk/$PACKAGE_ASSET_ID?token=$URL_ENCODED_TOKEN&block_number=$BLOCK_NUMBER"
    
        curl -X POST $UPLOAD_CHUNK_URL --data-binary "@$i" -H "Content-Length: $CONTENT_LENGTH" -H "Content-Type: $CONTENT_TYPE"
    done
    
  5. A feltöltés befejezése után frissítse a feltöltési erőforrás állapotát a következőre uploadFinished: .

    FINISHED_URL="https://file-aks.appcenter.ms/upload/finished/$PACKAGE_ASSET_ID?token=$URL_ENCODED_TOKEN"
    curl -d POST -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" "$FINISHED_URL"
    
    COMMIT_URL="https://api.appcenter.ms/v0.1/apps/$OWNER_NAME/$APP_NAME/uploads/releases/$ID"
    curl -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" \
    --data '{"upload_status": "uploadFinished","id": "$ID"}' \
    -X PATCH \
    $COMMIT_URL
    
  6. A feltöltés után rövid késés következik, mielőtt a feltöltés befejezésre kerül. Lekérdezze ezt az állapotot a $RELEASE_ID megszerzéséhez a következő lépéshez:

    RELEASE_STATUS_URL="https://api.appcenter.ms/v0.1/apps/$OWNER_NAME/$APP_NAME/uploads/releases/$UPLOAD_ID"
    POLL_RESULT=$(curl -s -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" $RELEASE_STATUS_URL)
    RELEASE_ID=$(echo $POLL_RESULT | jq -r '.release_distinct_id')
    
    if [[ $RELEASE_ID == null ]];
    then
       echo "Failed to find release from appcenter"
       exit 1
    fi
    
  7. Végül engedje fel a buildet. A meghívandó végpont a PATCH /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}

    DISTRIBUTE_URL="https://api.appcenter.ms/v0.1/apps/$OWNER_NAME/$APP_NAME/releases/$RELEASE_ID"
    
    curl -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" \
    --data '{"destinations": [{ "name": "'"$DISTRIBUTION_GROUP"'"}] }' \    
    -X PATCH \
    $DISTRIBUTE_URL
    
Kiadás terjesztése

Ossza el a feltöltött kiadást tesztelőknek, csoportoknak vagy áruházaknak, hogy megjelenjen a kiadás az App Center portálján. A három végpont a következő:

Példa csoportokra:

    curl -X POST -H "Content-Type: application/json" -H "Accept: application/json" -H "X-API-Token: $API_TOKEN" -d "{ \"id\": "$DISTRIBUTION_GROUP_ID", \"mandatory_update\": false, \"notify_testers\": false}" 

A terjesztési csoport azonosítóját a csoport beállítások lapján találja.

A több célhelyre való terjesztésre vonatkozó kérésre itt hivatkozunk az összetettebb forgatókönyvek esetében: PATCH /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}

Újra kiadás egy buildet

Ha egy buildet egy másik terjesztési csoportnak szeretne kiadni, az App Center bármely helyről lépjen a Kiadások terjesztése > gombra, majd válassza ki az újból terjesztendő kiadást. Megnyílik a kiadás részleteinek lapja. A képernyő jobb felső sarkában válassza az Elosztás gombot, és válassza ki a célhelyet az újrakiadási folyamat elindításához. Kövesse a varázsló lépéseit, és végül válassza az Elterjesztés lehetőséget a kiadás csoportoknak/tesztelőknek vagy áruháznak való elküldéséhez.

Kötelező frissítések

A kiadás kötelezővé tétele az alkalmazás ugyanazon verziójának futtatására kényszerítése minden felhasználó számára. Ha ezt teszi, az App Center minden tesztelőeszközre telepíti a kiválasztott frissítést.

Csak akkor teheti kötelezővé a kiadást, ha az alkalmazás az App Center Distribute SDK-t használja. Ha kötelezővé teszi a kiadást, jelölje be a Kötelező frissítés jelölőnégyzetet a kiadás terjesztésének felülvizsgálati szakaszában, vagy használhatja az API-t.

A kötelező kiadásokat az App Centerben a [Saját alkalmazás] > Csoportok terjesztése >> című kiadás megnyitásával tekintheti meg. A kötelező kiadásokat piros pont jelzi.

A sikeres kiadás után a tesztelők e-mailben, az App Centerbe való bejelentkezéssel vagy egy közvetlen hivatkozáson keresztül férhetnek hozzá a kiadáshoz.

Az egyes kiadásokra mutató hivatkozásokat a privát célokra szolgáló kiadási oldalon találja. Telepítés gomb

Megjegyzés:

Az Android-alkalmazáscsomagok (AAB) a letöltési gombra kattintva letölthetők a kiadási oldalon. Ha telepíthető APK-fájlformátumra van szüksége, használja a telepítési portált (https://install.appcenter.ms) az eszközön. A létrehozott QR-kód alatt található hivatkozás a letöltés gomb mellett található.

A nyilvános csoportok kiadási fülén találhatóak a nyilvános célhelyekre irányuló egyes kiadások hivatkozásai. Nyilvános mélyhivatkozás