App Distribution Gradle eklentisini kullanarak App Distribution'ı Android oluşturma sürecinize entegre edebilirsiniz. Eklenti, uygulamanızın build.gradle
dosyasında test cihazlarınızı ve sürüm notlarınızı belirlemenize olanak tanıyarak uygulamanızın farklı yapı türleri ve varyantları için dağıtımları yapılandırmanıza olanak tanır.
Bu kılavuz, APK'lerin App Distribution Gradle eklentisini kullanarak test kullanıcılarına nasıl dağıtılacağını açıklar.
Sen başlamadan önce
Henüz yapmadıysanız, Android projenize Firebase'i ekleyin .
Başka bir Firebase ürünü kullanmıyorsanız, bir proje oluşturmanız ve uygulamanızı kaydetmeniz yeterlidir. Ancak gelecekte ek ürünler kullanmaya karar verirseniz, yukarıda bağlantısı verilen sayfadaki tüm adımları tamamladığınızdan emin olun.
Adım 1. Android projenizi kurun
Proje düzeyindeki Gradle dosyanızda (genellikle
android/build.gradle
), App Distribution eklentisini bir buildscript bağımlılığı olarak ekleyin:buildscript { repositories { // Check that you have Google's Maven repository (if not, add it). google() jcenter() } dependencies { // Add the App Distribution Gradle plugin classpath 'com.google.firebase:firebase-appdistribution-gradle:3.0.1' } }
Uygulama düzeyindeki Gradle dosyanızda (genellikle
android/app/build.gradle
), Android eklentisinin altına App Distribution eklentisini ekleyin:apply plugin: 'com.android.application' // ... // Apply the App Distribution Gradle plugin apply plugin: 'com.google.firebase.appdistribution' // ...
Kurumsal bir proxy veya güvenlik duvarının arkasındaysanız, Uygulama Dağıtımının dağıtımlarınızı Firebase'e yüklemesini sağlayan aşağıdaki Java sistem özelliğini ekleyin:
-Djavax.net.ssl.trustStore=/path/to/truststore -Djavax.net.ssl.trustStorePassword=password
2. Adım. Firebase ile kimlik doğrulaması yapın
Gradle eklentisini kullanmadan önce Firebase projenizle kimlik doğrulaması yapmalısınız. Bunu başarmanın üç yolu vardır:
- Aşağıdaki komutu çalıştırın:
./gradlew appDistributionLogin
Komut, bir kimlik doğrulama bağlantısı yazdırır. Bağlantıyı bir tarayıcıda açın.
İstendiğinde, Google Hesabınızda oturum açın ve Firebase projenize erişim izni verin. Gradle komutu, App Distribution eklentisinin Firebase ile kimlik doğrulaması yapmak için kullandığı bir yenileme belirteci yazdırır.
-
FIREBASE_TOKEN
ortam değişkenini önceki adımdaki belirteç olarak ayarlayın:export FIREBASE_TOKEN=token
Bir hizmet hesabıyla kimlik doğrulama, eklentiyi sürekli entegrasyon (CI) sisteminizle esnek bir şekilde kullanmanıza olanak tanır. Hizmet hesabı kimlik bilgilerini sağlamanın iki yolu vardır:
- Hizmet hesabı anahtar dosyanızı
build.gradle
dosyasına iletin. Derleme ortamınızda hizmet hesabı anahtar dosyanız zaten varsa, bu yöntemi uygun bulabilirsiniz. -
GOOGLE_APPLICATION_CREDENTIALS
ortam değişkenini hizmet hesabı anahtar dosyanızı işaret edecek şekilde ayarlayın. Başka bir Google hizmeti (ör. Google Cloud) için önceden yapılandırılmış Uygulama Varsayılan Kimlik Bilgileriniz (ADC) varsa bu yöntemi tercih edebilirsiniz.
Hizmet hesabı kimlik bilgilerini kullanarak kimlik doğrulaması yapmak için:
- Google Cloud Console'da projenizi seçin ve yeni bir hizmet hesabı oluşturun.
- Firebase Uygulama Dağıtım Yöneticisi rolünü ekleyin.
- Özel bir json anahtarı oluşturun ve anahtarı, yapı ortamınızın erişebileceği bir konuma taşıyın. Firebase projenizde App Distribution'a yönetici erişimi verdiği için bu dosyayı güvenli bir yerde sakladığınızdan emin olun .
- Uygulamanızı 20 Eylül 2019'dan sonra oluşturduysanız bu adımı atlayın: Google API'leri konsolunda Firebase Uygulama Dağıtım API'sini etkinleştirin. İstendiğinde, Firebase projenizle aynı ada sahip projeyi seçin.
Hizmet hesabı kimlik bilgilerinizi sağlayın veya bulun:
- Hizmet hesabı anahtarınızı Gradle'a iletmek için
build.gradle
dosyanızda,serviceCredentialsFile
özelliğini özel anahtar JSON dosyasına ayarlayın. ADC ile kimlik bilgilerinizi bulmak için
GOOGLE_APPLICATION_CREDENTIALS
ortam değişkenini özel anahtar JSON dosyasının yoluna ayarlayın. Örneğin:export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json
ADC ile kimlik doğrulama hakkında daha fazla bilgi için Uygulamanız için kimlik bilgilerini sağlama konusunu okuyun.
- Hizmet hesabı anahtarınızı Gradle'a iletmek için
Projenizin kimliğini nasıl doğrulayacağınıza ilişkin talimatlar için Firebase CLI ile oturum açma konusuna bakın.
Adım 3. Dağıtım özelliklerinizi yapılandırın
app/build.gradle
dosyanızda, en az birfirebaseAppDistribution
bölümü ekleyerek App Distribution'ı yapılandırın. Örneğin,release
derlemesini test kullanıcılarına dağıtmak için:android { // ... buildTypes { release { firebaseAppDistribution { artifactType="APK" releaseNotesFile="/path/to/releasenotes.txt" testers="ali@example.com, bri@example.com, cal@example.com" } } } // ... }
Uygulama Dağıtımı, yapı türleri ve ürün tatları için yapılandırılabilir. Örneğin, "demo" ve "tam" ürün tatlarında
debug
verelease
sürümlerini dağıtmak için:android { // ... buildTypes { debug {...} release {...} } flavorDimensions "version" productFlavors { demo { dimension "version" firebaseAppDistribution { releaseNotes="Release notes for demo version" testers="demo@testers.com" } } full { dimension "version" firebaseAppDistribution { releaseNotes="Release notes for full version" testers="full@testers.com" } } } // ... }
Dağıtımı yapılandırmak için aşağıdaki parametreleri kullanın:
Uygulama Dağıtımı Oluşturma Parametreleri | |
---|---|
appId | Uygulamanızın Firebase Uygulama Kimliği. Yalnızca Google Services Gradle eklentisi yüklü değilse gereklidir. Uygulama Kimliğini appId="1:1234567890:android:321abc456def7890" |
serviceCredentialsFile | Hizmet hesabınızın özel anahtarı JSON dosyanızın yolu. Yalnızca hizmet hesabı kimlik doğrulamasını kullanıyorsanız gereklidir. |
artifactType | Uygulamanızın dosya türünü belirtir. |
artifactPath | Yüklemek istediğiniz APK veya AAB dosyasının mutlak yolu. |
releaseNotes veya releaseNotesFile | Bu yapı için sürüm notları. Ya doğrudan sürüm notlarını ya da bir düz metin dosyasının yolunu belirtebilirsiniz. |
testers ediciler veya test testersFile | Derlemeleri dağıtmak istediğiniz test kullanıcılarının e-posta adresleri. Test kullanıcılarını virgülle ayrılmış e-posta adresleri listesi olarak belirtebilirsiniz: testers="ali@example.com, bri@example.com, cal@example.com" Veya virgülle ayrılmış bir e-posta adresi listesi içeren bir dosyanın yolunu belirtebilirsiniz: testersFile="/path/to/testers.txt" |
groups veya groupsFile | Derlemeleri dağıtmak istediğiniz test kullanıcısı grupları (bkz. Test kullanıcılarını yönetme ). Gruplar kullanılarak belirtilir Grupları, grup takma adlarının virgülle ayrılmış listesi olarak belirtebilirsiniz: groups="qa-team, android-testers" Veya grup takma adlarının virgülle ayrılmış listesini içeren bir dosyanın yolunu belirtebilirsiniz: groupsFile="/path/to/tester-groups.txt" |
stacktrace | Kullanıcı istisnaları için yığın izini yazdırır. Bu, sorunlarda hata ayıklarken yardımcı olur. |
4. Adım. Uygulamanızı test kullanıcılarına dağıtın
Son olarak, test uygulamanızı paketlemek ve test kullanıcılarını davet etmek için, projenizin Gradle sarmalayıcısıyla
BUILD-VARIANT
veappDistributionUpload BUILD-VARIANT
VARIANT'ı oluşturun; burada BUILD-VARIANT , önceki adımda yapılandırdığınız isteğe bağlı ürün çeşidi ve yapı türüdür. Ürün lezzetleri hakkında daha fazla bilgi için bkz. Yapı varyantlarını yapılandırma .Örneğin, uygulamanızı
release
derleme varyantını kullanarak dağıtmak için aşağıdaki komutu çalıştırın:./gradlew assembleRelease appDistributionUploadRelease
Veya Google Hesabınızla kimlik doğrulaması yaptıysanız ve Gradle derleme dosyanızda kimlik bilgileri sağlamadıysanız,
FIREBASE_TOKEN
değişkenini ekleyin:export FIREBASE_TOKEN=1/a1b2c3d4e5f67890 ./gradlew --stop // Only needed for environment variable changes ./gradlew assembleRelease appDistributionUploadRelease
Ayrıca
--<property-name>=<property-value>
biçiminde komut satırı bağımsız değişkenleri ileterekbuild.gradle
dosyanızda ayarlanan değerleri geçersiz kılabilirsiniz. Örneğin:App Distribution'a bir hata ayıklama derlemesi yüklemek için:
./gradlew bundleDebug appDistributionUploadDebug --artifactType="APK"
Firebase projenizden ek test kullanıcıları davet etmek veya mevcut test kullanıcılarını kaldırmak için:
./gradlew appDistributionAddTesters --projectNumber=<project_number> --emails="anothertester@email.com, moretesters@email.com"
./gradlew appDistributionRemoveTesters --projectNumber=<project_number> --emails="anothertester@email.com, moretesters@email.com"
Firebase projenize bir test kullanıcısı eklendikten sonra, bunları ayrı sürümlere ekleyebilirsiniz. Kaldırılan test kullanıcıları artık projenizdeki sürümlere erişemez, ancak yine de bir süreliğine sürümlerinize erişimlerini sürdürebilirler.
Test kullanıcılarını --emails yerine
--file="/path/to/testers.txt"
--emails
da belirtebilirsiniz.appDistributionAddTesters
veappDistributionRemoveTesters
görevleri ayrıca aşağıdaki bağımsız değişkenleri kabul eder:projectNumber
: Firebase proje numaranız.serviceCredentialsFile
: Google hizmeti kimlik bilgileri dosyanızın yolu. Bu, yükleme eylemi tarafından kullanılan argümanın aynısıdır.
Derlemenizi dağıttıktan sonra, 150 gün (beş ay) boyunca Firebase konsolunun Uygulama Dağıtımı panosunda kullanılabilir hale gelir. Derlemenin süresinin dolmasına 30 gün kala, hem konsolda hem de test kullanıcınızın test cihazındaki derlemeler listesinde bir sona erme bildirimi görünür.
Uygulamayı test etmeye davet edilmemiş olan test kullanıcıları, başlamak için e-posta davetiyeleri alır ve mevcut test kullanıcıları, yeni bir derlemenin test edilmeye hazır olduğuna dair e-posta bildirimleri alır (test uygulamasının nasıl kurulacağına ilişkin talimatlar için test cihazı kurulum kılavuzunu okuyun). Her bir test kullanıcısının durumunu (davetiyeyi kabul edip etmediklerini ve uygulamayı indirip indirmediklerini) Firebase konsolunda izleyebilirsiniz.
Test kullanıcılarının, uygulamanın süresi dolmadan önce uygulamayı test etme davetini kabul etmesi için 30 günü vardır. Bir davetiyenin süresinin dolmasına 5 gün kala, bir sürümdeki test kullanıcısının yanında Firebase konsolunda bir sona erme bildirimi görünür. Bir davet, test kullanıcısı satırındaki açılır menü kullanılarak yeniden gönderilerek yenilenebilir.
Sonraki adım
Uygulama paketi sürümlerinin adım adım nasıl dağıtılacağını öğrenmek için Android App Bundle kod laboratuvarını ziyaret edin.