Bu kılavuzda, Firebase CLI'yı kullanarak APK'ları test kullanıcılarına nasıl dağıtacağınız açıklanmaktadır. KSA aracı, bir derleme için test kullanıcılarını ve sürüm notlarını belirtmenize, ardından derlemeyi buna göre dağıtmanıza olanak tanır.
Başlamadan önce
Henüz yapmadıysanız Firebase'i Android projenize ekleyin.
Başka Firebase ürünü kullanmıyorsanız yalnızca bir proje oluşturmanız ve uygulamanızı kaydetmeniz gerekir. Ancak gelecekte ek ürünler kullanmaya karar verirseniz yukarıda bağlantısı verilen sayfadaki tüm adımları tamamladığınızdan emin olun.
Firebase konsolunun App Distribution sayfasını açın. İstendiğinde Firebase projenizi seçin, uygulama değiştiriciyi kullanarak uygulamanızı seçin ve Başlayın'ı tıklayın.
1. Adım: Uygulamanızı geliştirin
Uygulamanızın yayın öncesi sürümünü test kullanıcılarına dağıtmaya hazır olduğunuzda, normal sürecinizi kullanarak APK'nızı oluşturun. APK'yı hata ayıklama anahtarınızla veya uygulama imzalama anahtarınızla imzalamanız gerekir.
2. adım: Uygulamanızı test kullanıcılarına dağıtma
Uygulamanızı test kullanıcılarına dağıtmak için Firebase KSA'yı kullanarak uygulamanızın dosyasını yükleyin:
- Firebase KSA'nın en yeni sürümünü yükleyin veya bu sürüme güncelleyin (işletim sisteminize özel KSA için bağımsız ikili programı indirmenizi öneririz). Oturum açtığınızdan ve projelerinize erişebildiğinizi test ettiğinizden emin olun.
-
Uygulamanızı yüklemek ve test kullanıcılarına dağıtmak için
appdistribution:distributekomutunu çalıştırın. Dağıtımı yapılandırmak için aşağıdaki parametreleri kullanın:appdistribution:distribute seçenekleri --appZorunlu: Uygulamanızın Firebase uygulama kimliği. Uygulama kimliğini Firebase konsolundaki Genel Ayarlar sayfasında bulabilirsiniz.
--app 1:1234567890:android:0a1b2c3d4e5f67890
--tokenCI ortamınızı Firebase KSA ile kimlik doğruladığınızda yazdırılan bir yenileme jetonu (daha fazla bilgi için KSA'yı CI sistemleriyle kullanma başlıklı makaleyi inceleyin).
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-fileBu derlemeyle ilgili sürüm notları.
Sürüm notlarını doğrudan belirtebilirsiniz:
--release-notes "Text of release notes"
Alternatif olarak, düz metin dosyasının yolunu belirtin:
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-fileDavet etmek istediğiniz test kullanıcılarının e-posta adresleri.
Test kullanıcılarını, e-posta adreslerinin virgülle ayrılmış bir listesi olarak belirtebilirsiniz:
--testers "ali@example.com, bri@example.com, cal@example.com"
Alternatif olarak, virgülle ayrılmış e-posta adresi listesini içeren bir düz metin dosyasının yolunu belirtebilirsiniz:
--testers-file "/path/to/testers.txt"
--groups
--groups-fileDavet etmek istediğiniz test kullanıcısı grupları (Test kullanıcılarını yönetme başlıklı makaleye bakın). Gruplar, Firebase konsolunda arayabileceğiniz
grup takma adları kullanılarak belirtilir.Grupları virgülle ayrılmış bir liste olarak belirtebilirsiniz:
--groups "qa-team, trusted-testers"
Alternatif olarak, virgülle ayrılmış grup adları listesini içeren bir düz metin dosyasının yolunu belirtebilirsiniz:
--groups-file "/path/to/groups.txt"
--debugAyrıntılı günlük çıktısı yazdırmak için ekleyebileceğiniz bir işaret.
--test-devices
--test-devices-fileTest çalıştırmak istediğiniz test cihazları Uygulama Testi ajanı.
Test cihazlarını, noktalı virgülle ayrılmış cihaz özellikleri listesi olarak belirtebilirsiniz:
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait"
Alternatif olarak, noktalı virgülle ayrılmış test cihazları listesini içeren düz metin dosyasının yolunu belirtebilirsiniz:
--test-devices-file: "/path/to/test-devices.txt"
--test-usernameUygulama Testi aracısı testleri sırasında kullanılacak otomatik giriş için kullanıcı adı.
--test-password
--test-password-fileUygulama Testi aracısı testleri sırasında kullanılacak otomatik giriş şifresi.
Alternatif olarak, şifre içeren düz metin dosyasının yolunu belirtebilirsiniz:
--test-password-file: "/path/to/test-password.txt"
--test-username-resourceUygulama Testi aracısı testleri sırasında kullanılacak otomatik giriş için kullanıcı adı alanının kaynak adı.
--test-password-resourceUygulama Testi aracısı testleri sırasında kullanılacak otomatik giriş için şifre alanının kaynak adı.
--test-non-blockingUygulama Testi ajanı testleri çalıştırılırken ayarlanırsa komut, testleri başlatır ve tamamlanmalarını beklemek yerine hemen geri döner. Test sonuçlarını görmek için Firebase konsolunu ziyaret edin. Bu işaret ayarlanmazsa komut, testler tamamlanana kadar engellenir ve testlerden herhangi biri başarısız olursa hata koduyla çıkar.
--results-bucketTest sonuçlarının depolandığı özel bir Google Cloud Storage (GCS) paketi. Boş bırakılırsa varsayılan paket kullanılır. Paket, faturalandırmanın etkin olduğu bir projeye ait olmalıdır ve paket belirtmek, kullanılan depolama alanı için faturalandırma ücretlerine neden olur.
Örneğin:
firebase appdistribution:distribute test.apk \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txtFirebase CLI, yayın yüklemesinden sonra aşağıdaki bağlantıları verir. Bu bağlantılar, ikili dosyaları yönetmenize ve test kullanıcılarının ve diğer geliştiricilerin doğru sürümü kullanmasını sağlamanıza yardımcı olur:
firebase_console_uri- Tek bir sürümü gösteren Firebase konsolun bağlantısı. Bu bağlantıyı kuruluşunuzdaki diğer geliştiricilerle paylaşabilirsiniz.testing_uri- Test kullanıcılarının sürüm notlarını görüntülemesine ve uygulamayı cihazlarına yüklemesine olanak tanıyan, test kullanıcısı deneyimindeki (yerleşik Android uygulaması) sürüme yönelik bir bağlantı. Test kullanıcısının bağlantıyı kullanabilmesi için yayına erişmesi gerekir.binary_download_uri- Uygulama ikili programını (APK veya AAB dosyası) doğrudan indiren ve yükleyen imzalı bir bağlantı. Bağlantının süresi bir saat sonra dolar.
Test kullanıcılarını ve grupları yönetme
Yayınları dağıtmanın yanı sıra
appdistribution:testers:addveappdistribution:testers:removesimgelerini kullanarak yeni test kullanıcılarını davet edebilir veya mevcut test kullanıcılarını Firebase projenizden kaldırabilirsiniz.Firebase projenize bir test kullanıcısı eklendikten sonra bu kullanıcıyı tek tek sürümlere ekleyebilirsiniz. Kaldırdığınız test kullanıcıları, projenizdeki sürümlere erişemez. Yakın zamanda kaldırılan test kullanıcılarının, bir süre boyunca sürümlerinize erişmeye devam edebileceğini unutmayın.
Örneğin:
firebase appdistribution:testers:add anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove anothertester@email.com moretesters@email.comTest kullanıcısı e-posta adresleri boşlukla ayrılmalıdır.
--file /path/to/testers.txtkullanarak da test kullanıcılarını belirtebilirsiniz.Çok sayıda test kullanıcınız varsa grupları kullanmayı düşünebilirsiniz: Firebase projenizde gruplar oluşturmak veya silmek için
appdistribution:group:createveappdistribution:group:deletesimgelerini kullanabilirsiniz.appdistribution:testers:addveappdistribution:testers:removekomutları için bir grup belirtmek üzere--group-aliaskullanın.Örneğin:
firebase appdistribution:group:create "QA team" qa-teamfirebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:group:delete qa-team
Derlemenizi dağıttıktan sonra 150 gün (beş ay) boyunca App Distribution konsolunun Firebase kontrol panelinde kullanılabilir. Derlemenin geçerlilik süresinin dolmasına 30 gün kaldığında hem konsolda hem de test cihazındaki test kullanıcılarının derleme listesinde geçerlilik süresinin dolma bildirimi gösterilir.
Uygulamayı test etmeye davet edilmemiş test kullanıcıları, başlamak için e-posta davetiyesi alır. Mevcut test kullanıcıları ise yeni bir derlemenin test edilmeye hazır olduğuna dair e-posta bildirimi alır (Test uygulamasının nasıl yükleneceğiyle ilgili talimatlar için test kullanıcısı kurulum kılavuzunu inceleyin). Her test kullanıcısının durumunu (daveti kabul edip etmediği ve uygulamayı indirip indirmediği) Firebase konsolunda izleyebilirsiniz.
Test kullanıcılarının, uygulamayı test etme davetini 30 gün içinde kabul etmesi gerekir. Aksi takdirde davetin süresi dolar. Bir davetin süresi dolmasına 5 gün kaldığında, sürümdeki test kullanıcısının yanında Firebase konsolunda bir son kullanma tarihi bildirimi gösterilir. Davetiye, test kullanıcısı satırındaki açılır menü kullanılarak yeniden gönderilerek yenilenebilir.
Sonraki adımlar
Test kullanıcılarından uygulamanızla ilgili geri bildirim (ekran görüntüleri dahil) toplamak için uygulama içi geri bildirim özelliğini uygulayın.
Uygulamanızın yeni derlemeleri yüklenebilir olduğunda test kullanıcılarınıza uygulama içi uyarılar göstermeyi öğrenin.
Android uygulamalarını CI/CD kullanarak kalite güvencesi test kullanıcılarına dağıtmayla ilgili en iyi uygulamaları öğrenin.