Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Visual Studio App Center, 30 Haziran 2026'ya kadar desteklenmeye devam edecek Analiz ve Tanılama özellikleri dışında 31 Mart 2025'te kullanımdan kaldırılmıştır. Daha fazla bilgi edinin.
Uygulama ikili paketinizi dağıtmak için App Center'a yükleyin. App Center, Android, iOS, macOS, Windows ve özel işletim sistemi uygulamaları için paket dağıtımlarını destekler. Sürümleri tek tek test edenlere veya test eden gruplarına dağıtabilirsiniz. iOS ve Android uygulamaları için Google Play, App Store ve Intune gibi mağazalarda da yayın yapabilirsiniz. Bkz. Tüketici ve kurumsal mağazalarda yayımlama.
Bu sayfada, yayın için ikili oluşturmayı ve portalı, komut satırı arabirimini (CLI) ve uygulama programlama arabirimini (API) kullanarak gruplara yüklemeyi ve yayımlamayı öğrenebilirsiniz.
Azure DevOps veya Jenkins'i de kullanabilirsiniz:
- Azure DevOps, App Center Distribute Task (sürüm 3+) kullanır
- Jenkins Eklentisi (sürüm 0.11.0+).
Uygulama ikili paketi oluşturma
İlk olarak, uygulamanızı yayın için ikili bir dosyaya paketlemeniz gerekir. Bu dosyayı el ile oluşturabilirsiniz.
Aşağıdaki bölümlerde App Center'ın dağıtım için desteklediği tüm uygulama türleri için dosyaların nasıl oluşturulacağı açıklanmaktadır.
Uyarı
Arşivi (.zip, .ipa ve diğerleri) yükleyecekseniz, uygulamanızın toplam sıkıştırılmamış boyutu 4 GB'tan az olmalıdır.
Android
Android için, imzalı bir uygulama paketi veya APK dosyası oluşturmanız gerekir. Bu işlemin tüm ayrıntıları için, bir uygulamayı yayına hazırlamaya ilişkin resmi Google belgelerine bakın.
- Bildirimi güncelleştirdiğinizden ve doğru yapılandırılmış bir Gradle derlemesine sahip olduğunuzdan emin olun.
- Android Studio'daİmzalı Paket Oluştur / APK Oluştur'u> seçin ve uygulama paketini veya APK'yı oluşturmak için sihirbazdaki adımları izleyin.
Android Studio, yerleşik uygulama paketlerini proje adı/modül adı/derleme/çıkış/paket/ ve APK'leri proje adı/modül adı/derleme/çıkış/apk/ içine yerleştirir.
Uyarı
Android Uygulama Paketini (AAB) dağıttığınızda App Center evrensel bir APK oluşturur, oluşturulan bir imzalama anahtarıyla imzalar ve bir cihaza dağıtır.
Ios
iOS için uygulamanız için bir IPA paketi oluşturmanız gerekir. Bu işlemin tüm ayrıntıları için resmi Apple belgelerine bakın.
- Sağlama profilinizdeki tüm donanım cihazları için UDID'leri kaydedin.
- Xcode'da ÜrünArşivi'ne> giderek uygulamanızı arşivlersiniz.
- Uygun sağlama profilini kullanarak arşivi dışarı aktarın.
macOS
macOS için bir uygulama paketi oluşturmanız gerekir. App Center, .app.zip, .pkg veya .dmg türünde uygulama paketlerinin yayınını destekler. Bu işlemin tüm ayrıntıları için resmi Apple macOS belgelerine bakın.
- Apple geliştirici hesabınıza tek bir cihazkaydedin veya birden çok cihaz kaydedin.
- Xcode'da ÜrünArşivi'ne> giderek uygulamanızı arşivlersiniz.
- Uygun sağlama profilini kullanarak arşivi dışarı aktarın.
Windows
App Center, .appx
, .appxbundle
, .appxupload
, .msi
, .msix
, .msixbundle
, .msixupload
veya .zip
türünde Windows uygulama paketlerinin yayınını destekler. Uygulamanızı AppX veya MSIX biçimlerinde paketleme hakkında ayrıntılı bilgi için resmi Microsoft UWP belgelerine bakın.
Özel işletim sistemi
Uygulamalar için derlemenizi özel bir işletim sistemiyle .zip biçimde arşivleyin.
Paketi dağıtma
Uyarı
İndirmek üzere dosya içeren tüm install.appcenter.ms URL'lere genel erişim sağlanır.
Bir paketi App Center ile dağıtmak için App Center'a gidin, uygulamanıza gidin, ardındanGrupları> gidin ve Yeni sürüm'e tıklayın. Sihirbazdaki adımları izleyin.
İlk adımda, karşıya yüklemek istediğiniz dosyaya göz atmak için Yayın alanını seçin veya dosyayı sürükleyip alana bırakın. Uygulamanızın işletim sistemine ve dosya uzantısına bağlı olarak App Center, sürümünüz için bir sürüm ve derleme numarası girmenizi isteyebilir. Bilgileri girin ve İleri'yi seçin.
Sürüm notlarını yayınınızın bir parçası olarak hem düz metin hem de Markdown biçiminde ekleyebilirsiniz. İleri'yi seçin.
Yayınınızı birden çok dağıtım grubuna veya test ediciye hedefleyebilirsiniz. App Center, bu sürümü bu test edenlerin ve seçili grupların parçası olan kullanıcıların kullanımına sağlar. İleri'yi seçin.
Bir iOS uygulamasını yayınlarken test edenlerinizin cihazlarını otomatik olarak sağlayabilirsiniz. İleri'yi seçin.
Sürümü gözden geçirin. Uygulamanız Dağıtım SDK'sını kullanıyorsa, App Center'ı yayını zorunlu hale getirecek şekilde yapılandırabilirsiniz. App Center bir sürümü dağıttığında, hedeflerde ayarlanan tüm test edicilere yeni sürümün e-posta bildirimini gönderir. Gözden geçirme sekmesinde test edenleri bilgilendirmemeyi seçebilirsiniz. Son olarak, dosyayı test edenlerinize göndermek için Dağıt'ı seçin.
App Center komut satırı arabirimini kullanarak dağıtma
Uyarı
Bu özelliği kullanmak için App Center CLI 2.7 veya daha yeni bir sürüm gerekir.
appcenter distribute release
komutu kullanarak yayınınızı dağıtın. Aşağıdaki örnek komut, ~/releases/my_app-23.ipa
tarafından sahip olunan Beta testers
uygulamasının My-App
grubuna David
adlı dosyayı dağıtır.
appcenter distribute release --app David/My-App --file ~/releases/my_app-23.ipa --group "Beta testers"
API kullanarak dağıtma
Bir sürümü dağıtmak için App Center API'sini çağırabilirsiniz. Aşağıdaki yaklaşım en düşük çalışma yaklaşımını açıklamaya yöneliktir; görevlerin çoğu daha fazla özelleştirilebilir veya otomatikleştirilebilir.
Örnek bir uygulama burada görülebilir: https://github.com/microsoft/appcenter-Xamarin.UITest-Demo/blob/main/ac-distribute.sh
Önkoşullar
- Karşıya yüklemek ve dağıtmak için Uygulama paketi.
- API belirteci alın. Api Belirteci tüm App Center API çağrıları için kimlik doğrulaması için kullanılır.
- Dağıtım Grubu Adı (isteğe bağlı, eksik veya geçersizse yine de yükleme tamamlanır)
- Dağıtım yapmak istediğiniz uygulama için
{owner_name}
ve{app_name}
'i belirleyin. Bu tanımlayıcılar API çağrıları için URL'de kullanılır. Bir kullanıcının sahip olduğu bir uygulama için App Center'daki URL şöyle görünebilir: https://appcenter.ms/users/Example-User/apps/Example-App. Burada,{owner_name}
Example-User
ve{app_name}
Example-App
. Kuruluşa ait bir uygulama için, URL'si https://appcenter.ms/orgs/Example-Org/apps/Example-App olabilir ve{owner_name}
Example-Org
olacaktır.
Yeni Sürümü Yükle
Şu sıralı API çağrılarını kullanarak yeni bir sürümü karşıya yükleyin:
Yeni bir sürüm yüklemesi oluşturun: Çağrılan uç nokta 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"
Yanıt,
{VARIABLE_NAME}
her kullanım için benzersiz olan verileri değiştirerek şuna benzer olacaktır:{ "id": "{ID}", "package_asset_id": "{PACKAGE_ASSET_ID}", "upload_domain": "https://file.appcenter.ms", "token": "{TOKEN}", "url_encoded_token": "{URL_ENCODED_TOKEN}" }
Önceki adımda verilen yanıttan parametreleri kopyalayın; bunların çoğu , ve
package_asset_id
dahil olmak üzereupload_domain
url_encoded_token
sonraki adımda kullanılır.Uygulama paketinizin boyutunu bayt cinsinden belirleyin. Doğru bayt sayısını almak için gibi
wc -c ExampleApp.ipa
bir komut kullanmanız önerilir.MIME Type
ayarlarınıcontent_type
uygulamanıza göre belirleyin:-
Android .apk satıcı türünü kullanır
application/vnd.android.package-archive
-
Android .aab satıcı türünü kullanır
application/x-authorware-bin
-
iOS genel türü kullanır
application/octet-stream
Son komut şuna benzer olmalıdır:
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.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"
Döndürülen çıkış şuna benzer olmalıdır:
{ "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" }
-
Android .apk satıcı türünü kullanır
Özelleştirilemeyen
chunk_size
değerini kullanarak, uygulamanızın karşıya yüklemesini Distribute'a yüklemek için sıralı öbeklere bölebilirsiniz. Örneğin, yardımcı programını şu şekilde kullanabilirsinizsplit
:split -b $CHUNK_SIZE $RELEASE_FILE_LOCATION temp/split
Bu komut,
temp
dizinindesplitaa
,splitab
ve benzeri adlı sıralı dosyalar oluşturur. Her dosyachunk_size
sınırı içinde bölünür.Sonra, parçalanmış uygulama paketinin her bir parçasını ilgili blokla yüklemeniz gerekiyor.
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.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
Karşıya yükleme tamamlandıktan sonra, karşıya yükleme kaynağının durumunu
uploadFinished
olarak güncelleştirin.FINISHED_URL="https://file.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
Dosya yüklendikten sonra, yükleme bitmiş olarak işaretlenmeden önce kısa bir gecikme olur. Bu durumu sorgulayarak sonraki adım için
$RELEASE_ID
değerini alın.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
Son olarak derlemeyi yayınlayın. Çağrılacak uç nokta 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
Sürümü Dağıt
App Center portalında sürümü görmek için karşıya yüklenen sürümü test edenlere, gruplara veya mağazalara dağıtın. Üç uç nokta şunlardır:
- POST /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}/testers
- POST /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}/groups
- POST /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}/stores
Gruplar için bir örnek:
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}"
Dağıtım grubu kimliğini bu grubun ayarlar sayfasında bulabilirsiniz.
Birden çok hedefe dağıtma isteğine burada daha karmaşık senaryolar için başvurabilirsiniz: PATCH /v0.1/apps/{owner_name}/{app_name}/releases/{release_id}
Bir yapı Re-Release
Bir derlemeyi başka bir dağıtım grubuna yayınlamak için App Center'daki herhangi bir yerden Yayınları Dağıt'a > gidin ve yeniden dağıtmak istediğiniz sürümü seçin. Sürüm ayrıntıları sayfası açılır. Ekranın sağ üst köşesindeki Dağıt düğmesini seçin ve yeniden yayınlama işlemini başlatmak için hedefi seçin. Sihirbazın adımlarını izleyin ve son olarak Dağıt'ı seçerek yayını gruplara/test edicilere veya mağazaya gönderin.
Zorunlu Güncelleştirmeler
Tüm kullanıcıları uygulamanızın aynı sürümünü çalıştırmaya zorlamak için bir sürümü zorunlu hale getirin. Bunu yaptığınızda, App Center seçilen güncelleştirmeyi tüm test cihazına yükler.
Yalnızca uygulamanız App Center Distribute SDK'sını kullanıyorsa bir sürümü zorunlu hale getirebilirsiniz. Yayını dağıtmanın gözden geçirme aşamasında Zorunlu güncelleştirme onay kutusunu seçerek yayını zorunlu hale getirin veya API'yi kullanabilirsiniz.
Zorunlu sürümleri App Center'da [Uygulamanız] > Dağıt > Gruplar > Yayınları açarak görüntüleyebilirsiniz. Zorunlu sürümler kırmızı bir noktayla gösterilir.
Yayınlara Bağlantı
Başarılı bir şekilde yayınladıktan sonra test edenleriniz yayına e-postayla, App Center'da oturum açarak veya doğrudan bir bağlantı üzerinden erişebilir.
Özel hedefler için yayın sayfasında, belirli sürümlerin bağlantılarını bulabilirsiniz.
Uyarı
Android Uygulama Paketleri (AAB), indirme düğmesine tıklayarak yayın sayfasında indirilebilir. Yüklenebilir bir APK dosya biçimine ihtiyacınız varsa lütfen cihazınızdaki yükleme portalını (https://install.appcenter.ms) kullanın. Bağlantıyı, oluşturulan QR kodunun altında indirme düğmesinin yanında bulabilirsiniz.
Genel gruplardaki yayınlar sekmesinde, genel hedeflere yönelik belirli yayınların bağlantılarını bulabilirsiniz.