1. Genel Bakış
Firebase Uygulama Dağıtımı SDK'sını iOS uygulama kod laboratuvarınıza entegre etme bölümüne hoş geldiniz. Bu kod laboratuvarında, yeni derlemeler indirilebilir olduğunda test kullanıcılarınıza uygulama içi uyarılar göstermek için Uygulama Dağıtımı SDK'sını uygulamanıza ekleyeceksiniz. Test kullanıcılarınızın güncellemeleri almak üzere oturum açmasını sağlamak için hem temel yapılandırmayı hem de özel yapılandırmayı nasıl kullanacağınızı öğreneceksiniz. Ardından, App Distribution'a yeni bir sürüm gönderecek ve doğrudan uygulamada yeni bir yapı uyarısı tetikleyeceksiniz.
ne öğreneceksin
- Yayın öncesi bir uygulamayı canlı test kullanıcılarına dağıtmak için Uygulama Dağıtımı nasıl kullanılır?
- Uygulama Dağıtımı iOS SDK'sını uygulamanıza nasıl entegre edebilirsiniz?
- Yüklemeye hazır yeni bir yayın öncesi yapı olduğunda bir testçi nasıl uyarılır?
- SDK'yı benzersiz test gereksinimlerinize uyacak şekilde nasıl özelleştirebilirsiniz?
Neye ihtiyacın olacak
- Xcode 12 (veya üstü)
- CocoaPods 1.9.1 (veya üstü)
- Ad Hoc dağıtım için bir Apple Developer hesabı
- Test için fiziksel bir iOS cihazı. ( iOS simülatör uygulaması, codelab'in çoğu için çalışır, ancak simülatörler sürümleri indiremez.)
Bu öğreticiyi nasıl kullanacaksınız?
iOS uygulamaları oluşturma deneyiminizi nasıl değerlendirirsiniz?
2. Firebase konsol projesi oluşturun
Yeni Firebase projesi ekle
- Firebase'de oturum açın.
- Firebase konsolunda, Proje Ekle'ye tıklayın ve ardından projenizi "Firebase Codelab" olarak adlandırın.
Bu proje için Google Analytics'i etkinleştirmeniz gerekmez.
- Proje oluştur'u tıklayın.
Firebase'e Uygulama Ekle
Uygulamanızı Firebase'e kaydettirmek için belgeleri izleyin. iOS Paket Kimliği olarak "com.google.firebase.codelab.AppDistribution.<your_name>" kullanın.
İstendiğinde, projenizin GoogleService-Info.plist
dosyasını indirin. Buna daha sonra ihtiyacınız olacak.
3. Örnek Projeyi Alın
Kodu İndir
Örnek projeyi klonlayarak başlayın.
git clone git@github.com:googlecodelabs/firebase-appdistribution-ios.git
Git kurulu değilse, örnek projeyi GitHub sayfasından veya bu bağlantıya tıklayarak da indirebilirsiniz.
Bağımlılıkları indirin ve projeyi Xcode'da açın
- Pod dosyasını aynı dizinde açın
cd firebase-appdistribution-ios/start Open Podfile
- Pod dosyanıza aşağıdaki satırı ekleyin:
Podfile
pod 'Firebase/AppDistribution'
Proje dizininde pod update
çalıştırın ve projeyi Xcode'da açın.
pod install --repo-update xed .
Paket Tanımlayıcıyı Firebase uygulamanızla eşleşecek şekilde güncelleyin
Soldaki menüde, AppDistributionExample'a çift tıklayın. Ardından, Genel sekmesini bulun ve paket tanımlayıcısını, Firebase uygulamanızın proje ayarlarında bulunabilen paket tanımlayıcısıyla eşleşecek şekilde değiştirin. Bu, "com.google.firebase.codelab.AppDistribution.<your_name>" olmalıdır
Firebase'i uygulamanıza ekleyin
Daha önce indirdiğiniz GoogleService-Info.plist
dosyasını dosya sisteminizde bulun ve Xcode projesinin kök dizinine sürükleyin. Bu dosyayı istediğiniz zaman projenizin ayarlar sayfasından da indirebilirsiniz.
AppDistributionExample/AppDelegate.swift
dosyanızda, dosyanın üst kısmındaki Firebase'i içe aktarın
AppDistributionExample/AppDelegate.swift
import Firebase
Ve didFinishLaunchingWithOptions
yönteminde Firebase'i yapılandırmak için bir çağrı ekleyin.
AppDistributionExample/AppDelegate.swift
FirebaseApp.configure()
4. App Distribution SDK ile uygulama içi yeni derleme uyarıları ayarlayın
Bu adımda, Firebase App Distribution SDK'yı uygulamanıza ekleyeceksiniz ve uygulamanızın yeni sürümleri yüklenebilir olduğunda test kullanıcılarınıza uygulama içi uyarılar göstereceksiniz. Bunu yapmak için "Firebase Codelab" projeniz için (Google Cloud Console'da) Firebase App Testers API'yi etkinleştirdiğinizden emin olun. Aynı hesapla giriş yapmanız ve üstteki açılır menüden doğru projeyi seçmeniz gerekecektir.
Uygulama içi uyarıları yapılandırın
App Distribution SDK, test kullanıcılarınız için uygulama içi derleme uyarıları kurmanın iki yolunu sunar: test kullanıcılarına gösterilecek önceden oluşturulmuş bir oturum açma diyaloğuyla birlikte gelen temel bir uyarı yapılandırması ve aşağıdakileri yapmanızı sağlayan gelişmiş bir uyarı yapılandırması kendi kullanıcı arayüzünüzü (UI) özelleştirin.
Temel uyarı yapılandırmasıyla başlayacağız. Henüz uyarıları etkinleştirmemiş olan test kullanıcılarına önceden oluşturulmuş bir uyarıları etkinleştir iletişim kutusunu görüntülemek için checkForUpdate
kullanabilir ve ardından yeni bir yapının mevcut olup olmadığını kontrol edebilirsiniz. Test kullanıcıları, App Distribution'da uygulamaya erişimi olan bir hesapta oturum açarak uyarıları etkinleştirir. Yöntem çağrıldığında aşağıdaki sırayı gerçekleştirir:
- Bir test cihazının uyarıları etkinleştirip etkinleştirmediğini kontrol eder. Değilse, Google hesaplarıyla App Distribution'da oturum açmalarını isteyen önceden oluşturulmuş bir diyalog görüntüler.
Uyarıları etkinleştirmek, test cihazında tek seferlik bir işlemdir ve uygulamanızın güncellemelerinde devam eder. Uyarılar, uygulama kaldırılana veya signOutTester
yöntemi çağrılana kadar test cihazında etkin durumda kalır. Daha fazla bilgi için yöntemin referans belgelerine ( Swift veya Objective-C ) bakın.
- Test cihazının yüklemesi için yeni kullanılabilir yapıları kontrol eder. Bir yayın nesnesi veya bir hata döndürür.
checkForUpdate
uygulamanızın herhangi bir noktasına dahil edebilirsiniz. Örneğin, UIViewController öğesinin viewDidAppear öğesine checkForUpdate ekleyerek, test kullanıcılarınızdan başlangıçta yeni kullanılabilir yapıları yüklemelerini isteyebilirsiniz.
AppDistributionViewController.swift
dosyanızda, dosyanın üst kısmındaki Firebase'i içe aktarın
AppDistributionViewController.swift
import Firebase
AppDistributionExample/AppDistributionViewController.swift dosyasını açın ve satırları şu şekilde viewDidAppear
yöntemine kopyalayın:
AppDistributionViewController.swift
override func viewDidAppear(_ animated: Bool) {
checkForUpdate()
}
Şimdi checkForUpdate() yöntemini uygulayalım.
AppDistributionViewController.swift
private func checkForUpdate() {
AppDistribution.appDistribution().checkForUpdate(completion: { [self] release, error in
var uiAlert: UIAlertController
if error != nil {
uiAlert = UIAlertController(title: "Error", message: "Error Checking for update! \(error?.localizedDescription ?? "")", preferredStyle: .alert)
} else if release == nil {
uiAlert = UIAlertController(title: "Check for Update", message: "No releases found!!", preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default))
} else {
guard let release = release else { return }
let title = "New Version Available"
let message = "Version \(release.displayVersion)(\(release.buildVersion)) is available."
uiAlert = UIAlertController(title: title, message: message, preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Update", style: UIAlertAction.Style.default) {
_ in
UIApplication.shared.open(release.downloadURL)
})
uiAlert.addAction(UIAlertAction(title: "Cancel", style: UIAlertAction.Style.cancel) {
_ in
})
}
self.present(uiAlert, animated: true, completion: nil)
})
}
5. Uygulamanızı indirmeleri için test kullanıcıları oluşturun ve davet edin
Bu adımda, uygulamanızı derleyecek ve yapıyı Firebase konsolunu kullanarak test kullanıcılarına dağıtarak uygulamanızı test edeceksiniz.
Uygulamanızı oluşturun
Uygulamanızın yayın öncesi bir sürümünü test kullanıcılarına dağıtmaya hazır olduğunuzda, oluşturma hedefi olarak "Herhangi bir iOS Aygıtı (arm64)" öğesini ve Ürün->Arşivle'yi seçin. Arşiv oluşturulduktan sonra Geliştirme dağıtım profili ile imzalanmış bir dağıtım oluşturun.
Derleme tamamlandığında, belirttiğiniz klasöre bir IPA dosyası ve bazı günlük dosyaları kaydeder. IPA dosyasını aşağıdaki adımlarda test kullanıcılarınıza dağıtırsınız.
Uygulamanızı oluştururken sorun yaşarsanız sorun giderme adımları için Apple'ın ortak tasarım belgelerine bakın.
Uygulamanızı test kullanıcılarına dağıtın
Uygulamanızı test kullanıcılarına dağıtmak için Firebase konsolunu kullanarak IPA dosyasını yükleyin:
- Firebase konsolunun Uygulama Dağıtımı sayfasını açın. İstendiğinde Firebase projenizi seçin.
- Başla'ya basın
- Sürümler sayfasında, açılır menüden dağıtmak istediğiniz uygulamayı seçin.
- Yüklemek için uygulamanızın IPA dosyasını konsola sürükleyin.
- Yükleme tamamlandığında, yapıyı almak istediğiniz test kullanıcısı gruplarını ve bireysel test kullanıcılarını belirtin. (Daveti almak için e-postanızı ekleyin.) Ardından, yapı için sürüm notları ekleyin. Test kullanıcısı grupları oluşturma hakkında daha fazla bilgi için Test kullanıcılarını yönetme konusuna bakın.
- Yapıyı testçilerin kullanımına sunmak için Dağıt'a tıklayın.
Sürüme test kullanıcısı olarak kendinizi ekleyin
Firebase konsolunda, uygulamanızın sürümü kapsamında eklediğiniz test kullanıcılarını artık görebilirsiniz.
E-posta adresinizi eklediğiniz için, Firebase App Distribution'dan sizi uygulamayı test etmeye davet eden bir e-posta alacaksınız. Artık ilk testçi sizsiniz! Test cihazınızda test cihazı olarak kurulum yapmak için aşağıdaki bölüme devam edin.
Test cihazınızı kaydedin
Ad Hoc sürümünü indirip test etmek için önce test cihazınızı kaydettirmeniz gerekir.
- iOS test cihazınızda, Firebase App Distribution'dan gönderilen e-postayı açın ve Başlayın bağlantısına dokunun. Bağlantıyı Safari'de açtığınızdan emin olun.
- Görüntülenen Firebase Uygulama Dağıtımı test cihazı web uygulamasında Google hesabınızla oturum açın ve Davetiyeyi kabul et'e dokunun.
Şimdi, davet edildiğiniz yayını göreceksiniz.
- Uygulamanızın temel hazırlık profilini daha sonra güncelleyebilmek için UDID'nizi Firebase ile paylaşmak üzere Cihazı kaydet'e dokunun.
- Talimatları izleyin ve profili indirmek ve UDID'nizi paylaşmak için ayarlara gidin.
Şimdi, Uygulama Dağıtımına geri döndüğünüzde sürüm artık "Cihaz kayıtlı" olarak işaretlenir:
Test cihazının UDID'si artık geliştiriciyle paylaşılmıştır. Test cihazına uygulamanın yeni bir sürümünü oluşturmak artık geliştiriciye kalmıştır.
Test kullanıcısı bilgilerini konsolda görüntüleyin
Firebase konsolunda geliştiricinin görünümüne döndüğünüzde, test kullanıcısı sürümün altında "Kabul Edildi" olarak görünecektir:
Ayrıca, kullandıkları cihaz temel hazırlık profiline dahil değilse, geliştirici olarak bir e-posta da alırsınız. Bu, eklemeniz gereken yeni UDID'yi size bildirecektir. Ayrıca tüm UDID'leri bir metin dosyası olarak dışa aktarma seçeneğiniz de vardır.
- Tüm UDID'leri dışa aktarmak için Test Cihazları ve Gruplar sekmesini açın.
- "Apple UDID'lerini Dışa Aktar"ı tıklayın.
Dosya, test cihazınızın UDID'sini içermelidir.
Device ID Device Name Device Platform
1234567890 tester.app.distribtuion@gmail.com - iPhone SE 2nd Gen ios
Bu e-postalardan birini aldığınızda, temel hazırlık profilinizi UDID ile güncelleyin ve aşağıdaki adımları izleyerek test cihazlarınıza yeni bir yapı dağıtın:
- Aygıtları Apple geliştirici portalınıza ekleyin.
- 1. Seçenek: Cihaz UDID'lerini bir CSV dosyası olarak içe aktarın. Uygulama Dağıtımı panosundaki Test Kullanıcıları ve Gruplar sekmesinde, Tüm test kullanıcıları'nı seçin ve ardından bir CSV dosyası indirmek için Apple UDID'lerini Dışa Aktar'ı tıklayın. Ardından, Birden Fazla Aygıt Kaydet seçeneğini kullanarak dosyayı Apple geliştirici hesabınıza aktarın. Daha fazla bilgi edinmek için Apple'ın belgelerine bakın. Apple geliştirici hesabınızın yılda yalnızca sınırlı sayıda cihazı içe aktarmanıza izin verebileceğini unutmayın.
- 2. Seçenek: UDID'leri e-posta ile toplayın ve girin. Apple geliştirici portalının Aygıt Ekle sayfasında, aldığınız e-postada belirtilen yeni UDID'yi kaydedin.
- Kayıtlı cihazları temel hazırlık profilinize ekleyin.
- Temel hazırlık profilini indirin ve uygulamanızı yeniden oluşturmak için kullanın. Yalnızca kayıtlı cihazları güncellemek için yeniden oluşturuyorsanız yapı numarasını veya sürümünü güncellemeyin.
- Uygulamanızı Firebase konsolundan veya CLI'dan yeniden dağıtın . Aynı yapı numarasına ve sürüme sahip bir yapıyı zaten dağıttıysanız, yalnızca yeni kaydedilen cihazların kullanıcıları bildirim e-postaları alır.
Sürümü test cihazından indirin
Artık sürüm, test cihazının UDID'sine sahiptir, böylece test cihazı uygulamayı indirip yükleyebilir. App Distribution, UDID'leri yeni bir sürüme eklendiğinde test kullanıcılarına bir e-posta gönderir.
- Test cihazında, e-postadaki bağlantıyı veya cihazın ana ekranındaki simgeyi kullanarak App Distribution test cihazı web uygulamasına dönün.
UDID codelab uygulamasına gittiğinizde, sürümün indirilmeye hazır olduğunu görebilirsiniz.
- Fiziksel bir cihaz kullanıyorsanız, indir'e basın, ardından uygulamayı kurun ve çalıştırın!
- Uygulama başladığında, yeni derleme uyarılarını etkinleştirmenizi isteyecektir. "Aç" ı seçin
- Ardından oturum açmanızı isteyecektir. "Devam Et"i tıklayın.
- Test kullanıcısı hesabınızla oturum açın.
- Uygulamaya geri götürüleceksiniz. Uygulamayı bir sonraki çalıştırışınızda oturum açmanız veya uyarıları kabul etmeniz gerekmeyecek.
Test kullanıcılarınıza bir güncelleme dağıtın
- Derleme numaranızı "2" olarak güncelleyin.
- Oluşturma hedefi olarak "Herhangi bir iOS Aygıtı (arm64)" seçeneğini ve Ürün->Arşivle'yi seçin. Arşiv oluşturulduktan sonra Geliştirme dağıtım profili ile imzalanmış bir dağıtım oluşturun.
- Derleme tamamlandığında, belirttiğiniz klasöre bir IPA dosyası ve bazı günlük dosyaları kaydeder. Bu yeni IPA'yı Firebase konsolunuza yükleyin, e-postanızı tekrar test kullanıcısı olarak ekleyin ve Dağıtın.
Test oluşturma uyarıları
- Açıksa uygulamayı kapattığınızdan emin olun. Uygulamayı yeniden başlatın.
- Uygulama yeniden başlatıldığında, "Yeni Sürüm Kullanılabilir" uyarısı almalısınız.
- En son sürümü almak için "Güncelle"ye tıklayın.
- Bir sonraki ekranda "Kur" düğmesine tıklayın.
- Tebrikler! Yerleşik uyarılarla uygulamanızı güncelleyebildiniz.
6. Test kullanıcısının oturum açmasını özelleştirin
SignInTester/signOutTester ve isTesterSignedIn yöntemleri, test cihazınızın oturum açma deneyimini özelleştirme konusunda size daha fazla esneklik sağlar, böylece uygulamanızın görünümüne ve izlenimine daha iyi uyum sağlayabilir.
Aşağıdaki örnek, test kullanıcısının Firebase App Distribution test hesabında zaten oturum açıp açmadığını kontrol eder, böylece oturum açma kullanıcı arayüzünüzü yalnızca henüz oturum açmamış test kullanıcıları için görüntülemeyi seçebilirsiniz. Test kullanıcısı oturum açtıktan sonra şunları yapabilirsiniz: test cihazının yeni bir yapıya erişimi olup olmadığını kontrol etmek için checkForUpdate'i arayın.
checkForUpdate() çağrısını yorumlayarak viewDidAppea r'de güncellemelerin otomatik olarak kontrol edilmesini devre dışı bırakalım.
AppDistributionViewController.swift
override func viewDidAppear(_ animated: Bool) {
// checkForUpdate()
}
Bunun yerine checkForUpdateButtonClicked( ) içindeki checkForUpdate ()'i çağıralım.
@objc func checkForUpdateButtonClicked() {
checkForUpdate()
}
Şimdi, kullanıcı oturumu kapalıysa oturum açacak veya zaten oturum açmışsa kullanıcının oturumunu kapatacak olan signInOutButtonClicked() yöntemimizi uygulayalım.
AppDistributionViewController.swift
@objc func signInOutButtonClicked() {
if isTesterSignedIn() {
AppDistribution.appDistribution().signOutTester()
self.configureCheckForUpdateButton()
self.configureSignInSignOutButton()
self.configureSignInStatus()
} else {
AppDistribution.appDistribution().signInTester(completion: { error in
if error == nil {
self.configureCheckForUpdateButton()
self.configureSignInSignOutButton()
self.configureSignInStatus()
} else {
let uiAlert = UIAlertController(title: "Custom:Error", message: "Error during tester sign in! \(error?.localizedDescription ?? "")", preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default) {
_ in
})
self.present(uiAlert, animated: true, completion: nil)
}
})
}
}
Son olarak isTesterSignedI n yöntemini uygulayalım.
AppDistributionViewController.swift
private func isTesterSignedIn() -> Bool {
return AppDistribution.appDistribution().isTesterSignedIn
}
Uygulamanızı oluşturun ve test edin
7. Tebrikler!
Firebase App Distribution iOS SDK'yı kullanarak bir uygulamada "uygulama içi uyarı görüntüleme" özelliğini oluşturdunuz.
Neleri ele aldık
- Firebase Uygulama Dağıtımı
- Firebase Uygulama Dağıtımı Yeni Uyarılar iOS SDK'sı
Sonraki adımlar
Daha fazla bilgi edin
Sorunuz mu var?
Sorun Bildir