1. Genel Bakış
Android uygulaması codelab'inizde Firebase App Distribution SDK'sını entegre etme bölümüne hoş geldiniz. Bu codelab'de, yeni derlemeler indirilmeye hazır olduğunda test kullanıcılarınıza uygulama içi uyarılar göstermek için uygulamanıza App Distribution Android SDK'sını ekleyeceksiniz. Test kullanıcılarınızın güncellemeleri almak için oturum açmasını sağlamak amacıyla hem temel yapılandırmayı hem de özel yapılandırmayı nasıl kullanacağınızı öğreneceksiniz. Ardından yeni bir sürümü App Distribution'a aktarır ve doğrudan uygulamanın içinden yeni bir derleme uyarısını tetiklersiniz.
Neler öğreneceksiniz?
- Yayın öncesi bir uygulamayı test kullanıcılarına dağıtmak için App Distribution'ı kullanma
- App Distribution Android SDK'sını uygulamanıza entegre etme
- Yüklenmeye hazır yeni bir yayın öncesi derleme olduğunda test kullanıcısını uyarma
- SDK'yı test ihtiyaçlarınıza uygun şekilde özelleştirme
Gerekenler
- En son Android Studio sürümü.
- Örnek kod.
- Android 4.4 veya sonraki bir sürüme ve Google Play Hizmetleri 9.8 veya sonraki sürümlere sahip bir test cihazı ya da Google Play Hizmetleri 9.8 veya sonraki sürümlere sahip bir emülatör.
- Cihaz kullanıyorsanız bağlantı kablosu.
Bu eğiticiden nasıl yararlanacaksınız?
Android uygulamaları geliştirme deneyiminizi nasıl değerlendirirsiniz?
2. Örnek kodu alın
GitHub deposunu komut satırından klonlayın.
$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git
Git yüklü değilse örnek projeyi GitHub sayfasından veya bu bağlantıyı tıklayarak da indirebilirsiniz.
3. Başlangıç uygulamasını içe aktarın
Android Studio'da, örnek kod indirme bölümünden codelab-appdistribution-android/start
dizinini ( ) seçin (Dosya > Aç > .../codelab-appdistribution-android/start).
Artık Android Studio'da başlangıç projesi açık olmalıdır.
4. Firebase konsol projesi oluşturma
Yeni Firebase projesi ekleyin
- Firebase konsolunu açın.
- Add Project'i (Proje Ekle) seçin ve projenizi "Firebase Codelab" olarak adlandırın.
Bu proje için Google Analytics'i etkinleştirmeniz gerekmez.
- Create project (Proje oluştur) seçeneğini tıklayın.
Firebase'e uygulama ekleyin
Uygulamanızı Firebase'e kaydedin. "com.google.firebase.appdistributioncodelab"i kullanın girin.
Uygulamanıza google-services.json dosyasını ekleyin
Paket adını ekleyip Kaydol'u seçtikten sonra, google-services.json'u uygulamanıza eklemek için şu adımları izleyin:
- Firebase Android yapılandırma dosyanızı almak için Google-services.json'u indir'i tıklayın.
- google-services.json dosyasını projenizdeki
app
dizinine kopyalayın. - Dosya indirildikten sonra, konsolda gösterilen sonraki adımları Atlatabilirsiniz (bu adımlar, sizin için build-android-start projesinde uygulanmıştır).
Uygulama kimliğini Firebase uygulamanızla eşleşecek şekilde güncelleyin
- Soldaki menüde (Proje Sekmesi) "Android" "Gradle Komut Dosyaları"nı görüntüleme ve bulma sekmesini tıklayın ve modül (uygulama düzeyinde) Gradle dosyanızı (genellikle
app/build.gradle.kts
) açın. applicationId
özelliğini, Firebase uygulamanızın uygulama kimliğiyle eşleşecek şekilde değiştirin. Bu adres "com.google.firebase.appdistributioncodelab" olmalıdır.
Projenizi Gradle dosyalarıyla senkronize etme
Tüm bağımlılıkların uygulamanızda kullanılabildiğinden emin olmak için Dosya > Android Studio araç çubuğundan Projeyi Gradle Dosyaları ile senkronize edin.
5. App Distribution Android SDK'sı ile uygulama içi yeni derleme uyarıları ayarlama
Bu adımda, Firebase App Distribution Android SDK'sını uygulamanıza ekleyecek ve uygulamanızın yeni derlemeleri yüklenmeye hazır olduğunda test kullanıcılarınıza uygulama içi uyarılar görüntüleyeceksiniz. Bunu yapmak istiyorsanız "Firebase Codelab" için Firebase App Testers API'yi etkinleştirdiğinizden emin olun projesi (Google Cloud Console'da). Aynı hesapla oturum açmanız ve üstteki açılır menüden doğru projeyi seçmeniz gerekir.
Uygulama içi uyarıları yapılandırma
App Distribution Android SDK'sı, test kullanıcılarınız için uygulama içi derleme uyarıları ayarlamak üzere iki yol sunar:
- Test kullanıcılarına gösterilecek önceden oluşturulmuş bir iletişim kutusu içeren temel uyarı yapılandırması.
- Kullanıcı arayüzünüzü özelleştirmenize olanak tanıyan gelişmiş bir uyarı yapılandırması.
Temel uyarı yapılandırmasıyla başlayacağız. Henüz uyarıları etkinleştirmemiş test kullanıcılarına önceden oluşturulmuş uyarıları etkinleştirme iletişim kutusunu görüntülemek ve yeni bir derlemenin mevcut olup olmadığını kontrol etmek için updateIfNewReleaseAvailable
aracını kullanabilirsiniz. Test kullanıcıları, App Distribution'da uygulamaya erişimi olan bir hesapta oturum açarak uyarıları etkinleştirir. Bu yöntem çağrıldığında aşağıdaki sırayı uygular:
- Bir test kullanıcısının uyarıları etkinleştirip etkinleştirmediğini kontrol eder. Aksi takdirde, yöntemde test kullanıcılarından Google Hesapları ile App Distribution'da oturum açmasını isteyen önceden oluşturulmuş bir iletişim kutusu görüntülenir.
Uyarıları etkinleştirme, test cihazında tek seferlik bir işlemdir ve uygulamanızın tüm güncellemelerinde kalır. Uyarılar, uygulama kaldırılana veya signOutTester
yöntemi çağrılana kadar test cihazında etkin durumda kalır.
- Test kullanıcısının yüklemesi için yeni kullanıma sunulan derlemeleri kontrol eder.
- Test kullanıcısının en son sürümü indirmesini isteyen önceden oluşturulmuş bir uyarı görüntüler.
- Güncellemeye devam etmeden önce yeni derleme türünü kontrol eder:
- Yeni derleme bir uygulama paketi (AAB) ise güncelleme işlemini tamamlaması için test kullanıcısını Play Store'a yönlendirir.
- Yeni derleme bir APK ise SDK, yeni derlemeyi arka planda indirir ve indirme işlemi tamamlandığında test kullanıcısından yeni derlemeyi yüklemesini ister. SDK,
NotificationManager.
kullanarak kullanıcıya indirme ilerleme durumu bildirimleri gönderir.updateIfNewReleaseAvailable
Görevine bironProgressUpdate
işleyici ekleyerek kendi ilerleme göstergenizi ekleyebilirsiniz.
updateIfNewReleaseAvailable()
numarasını uygulamanızda istediğiniz zaman arayabilirsiniz. Örneğin, MainActivity'nin onResume()
yöntemi sırasında updateIfNewReleaseAvailable()
komutunu çağırabilirsiniz:
MainActivity.kt dosyasını açın ve onResume()
yöntemini şu şekilde oluşturun:
MainActivity.kt
override fun onResume() {
super.onResume()
checkForUpdate()
}
Şimdi checkForUpdate()
yöntemini uygulayalım.
MainActivity.kt
private fun checkForUpdate() {
firebaseAppDistribution.updateIfNewReleaseAvailable()
.addOnProgressListener { updateProgress ->
// (Optional) Implement custom progress updates in addition to
// automatic NotificationManager updates.
}
.addOnFailureListener { e ->
if (e is FirebaseAppDistributionException) {
// Handle exception.
}
}
}
6. Test kullanıcıları oluşturup uygulamanızı indirmeye davet edin
Bu adımda, uygulamanızı oluşturur ve Firebase konsolunu kullanıp test kullanıcılarına dağıtarak uygulamanızı test edersiniz.
Uygulamanızı oluşturma
Uygulamanızın yayın öncesi sürümünü test kullanıcılarına dağıtmaya hazır olduğunuzda, APK'nızı normal işleminizi kullanarak oluşturun. APK'yı hata ayıklama anahtarınızla veya uygulama imzalama anahtarınızla imzalamanız gerekir.
Uygulamanızı test kullanıcılarına dağıtma
Uygulamanızı test kullanıcılarına dağıtmak için Firebase konsolunu kullanarak APK dosyasını yükleyin:
- Firebase konsolunun Uygulama Dağıtımı sayfasını açın. İstendiğinde Firebase projenizi seçin.
- Sürümler sayfasında, açılır menüden dağıtmak istediğiniz uygulamayı seçin.
- Başlayın'ı tıklayın.
- Uygulamanızın APK dosyasını yüklemek için konsola sürükleyin.
- Yükleme tamamlandığında, derlemeyi almak istediğiniz test kullanıcısı gruplarını ve bağımsız test kullanıcılarını belirtin. (Daveti almak için e-posta adresinizi ekleyin.) Ardından, derleme için sürüm notları ekleyin. Test kullanıcısı grupları oluşturma hakkında daha fazla bilgi edinmek için Test kullanıcıları ekleme ve kaldırma başlıklı makaleyi inceleyin.
- Derlemeyi test kullanıcılarının kullanımına sunmak için Dağıt'ı tıklayın.
Firebase konsolunda artık uygulama sürümünüzün altında eklediğiniz test kullanıcılarını görebilirsiniz.
E-posta adresinizi eklediğiniz için Firebase App Distribution'dan sizi uygulamayı test etmeye davet eden bir e-posta alırsınız. Artık ilk test kullanıcısısınız! Test cihazınızda test kullanıcısı olarak kurulum yapmak için davetiyeyi kabul edin bölümündeki talimatları uygulayın.
Daveti kabul edin
Önce sürümü indirip test etmek için daveti kabul etmeniz gerekir.
- Android test cihazınızda Firebase App Distribution'dan gönderilen e-postayı açın ve Başlayın'a dokunun.
- Firebase App Distribution test kullanıcısı web uygulamasında Google hesabınızla oturum açın ve Davetiyeyi kabul et'e dokunun. Artık test etmeye davet edildiğiniz sürümü görebilirsiniz.
Sürümü test cihazından indirme
App Distribution codelab uygulamasına gittiğinizde sürümün indirilmeye hazır olduğunu göreceksiniz.
- İndir'e dokunun, ardından uygulamayı yükleyip çalıştırın.
- Uygulama başlatıldığında yeni derleme uyarılarını etkinleştirmeniz istenir. Etkinleştir'e dokunun.
- Test kullanıcısı hesabınızla oturum açın.
Uygulamaya dönersiniz. Uygulamayı tekrar çalıştırdığınızda oturum açmanız veya uyarıları kabul etmeniz gerekmez
Test kullanıcılarınıza güncelleme dağıtma
- versionName parametrenizi "1.1" olarak güncelleyin. Gradle dosyanızda (genellikle app/build.gradle) versionCode'u ve versionCode'u da 2 olarak ayarlayın.
- APK'nızı normal işleminizi kullanarak oluşturun. APK'yı hata ayıklama anahtarınızla veya uygulama imzalama anahtarınızla imzalamanız gerekir.
- Bu yeni APK'yı Firebase konsolunuza yükleyin, e-posta adresinizi tekrar test kullanıcısı olarak ekleyin ve Dağıt'ı tıklayın.
Test derleme uyarıları
- Uygulama açıksa bunu kapattığınızdan emin olun.
- Uygulamayı yeniden başlatın.
- Uygulama yeniden başlatıldığında Yeni Sürüm Kullanılabilir uyarısı alırsınız.
- En son sürümü almak için Güncelle'yi tıklayın.
- İstenirse bilinmeyen kaynaklardan yüklemeleri etkinleştirme seçeneğini belirleyin.
- Sonraki ekranda Yükle'yi (veya Güncelle'yi) tıklayın.
- Tebrikler! Uygulamanızı yerleşik uyarılarla güncelleyebildiniz.
7. Test kullanıcısının oturum açma işlemini özelleştirin
signInTester/signOutTester ve isTestersigninIn yöntemleri, test kullanıcınızın oturum açma deneyimini özelleştirirken size daha fazla esneklik sağlar. Böylece, uygulamanızın görünümü ve tarzıyla daha iyi eşleşir.
Aşağıdaki örnek, test kullanıcısının Firebase App Distribution test kullanıcısı hesabında önceden oturum açıp açmadığını kontrol eder. Bu nedenle, oturum açma kullanıcı arayüzünüzü yalnızca henüz oturum açmamış test kullanıcılarına göstermeyi seçebilirsiniz. Test kullanıcısı oturum açtıktan sonra, test kullanıcısının yeni bir derlemeye erişiminin olup olmadığını kontrol etmek için checkForUpdate çağrısını yapabilirsiniz.
checkForUpdate() çağrısını yorumlayarak onResume'da güncellemeleri otomatik olarak kontrol etmeyi devre dışı bırakalım.
MainActivity.kt
override fun onResume() {
super.onResume()
//checkForupdate()
}
Bunun yerine, updatebutton'ın OnClickListener işlevine checkForUpdate() zaten eklenmiştir.
Şimdi signIn() yöntemimizi uygulayalım. Bu yöntem kullanıcının oturum açmasını, oturumu kapatılmışsa kullanıcının oturumunun kapatılmasını sağlar.
MainActivity.kt
private fun signIn() {
if (isTesterSignedIn()) {
firebaseAppDistribution.signOutTester()
configureUpdateButton()
configureSigninButton()
} else {
firebaseAppDistribution.signInTester()
}
}
Son olarak isTesterSignIn yöntemini uygulayalım.
MainActivity.kt
private fun isTesterSignedIn() : Boolean {
return firebaseAppDistribution.isTesterSignedIn
}
Uygulamanızı derleme ve test etme
8. Tebrikler!
"Uygulama içi uyarı ekranı"nı oluşturduysanız özelliğini kullanarak bir uygulamaya ekleyebilirsiniz.
İşlediğimiz konular
- Firebase App Distribution
- Firebase App Distribution Yeni Uyarıları Android SDK'sı
Sonraki adımlar
Daha Fazla Bilgi
Sorunuz mu var?
Sorun Bildirin