Apple platformlarında Firebase'i anlama

Firebase'i kullanarak Apple uygulamanızı geliştirirken bilmediğiniz veya Firebase'e özgü kavramlarla karşılaşabilirsiniz. Bu sayfa, bu soruları yanıtlamayı veya daha fazla bilgi edinmek için sizi kaynaklara yönlendirmeyi amaçlar.

Bu sayfada ele alınmayan bir konuyla ilgili sorularınız varsa online topluluklarımızdan birini ziyaret edebilirsiniz. Bu sayfayı düzenli olarak yeni konularla güncelleyeceğiz. Öğrenmek istediğiniz konuyu ekleyip eklemediğimizi görmek için sayfayı tekrar ziyaret edin.

Platforma göre Firebase kitaplığı desteği

Aşağıdaki tabloda, hangi Firebase kitaplıklarının hangi Apple platformlarıyla uyumlu olduğu açıklanmaktadır. Şu anda visionOS ve watchOS yalnızca topluluk tarafından desteklenmektedir. Yükleme talimatları ve bilinen sorunlar için Firebase Apple platformları SDK'sı GitHub deposuna bakın.

Kitaplık iOS macOS Mac
Catalyst
tvOS visionOS watchOS
A/B Testing
Firebase AI Logic 1 iOS 15+ macOS 12+ Catalyst 15+ tvOS 15 ve sonraki sürümler (yalnızca topluluk desteği) watchOS 8+
Analytics v8.9.0+ v8.9.0+ v8.9.0+
Reklam kimliği olmadan Analytics v8.9.0+ v8.9.0+ v8.9.0+
Analytics cihaz üzerinde dönüşüm
App Check
DeviceCheck sağlayıcısı
watchOS 9 veya sonraki sürümler
App Check
App Attest sağlayıcısı
iOS 14+ macOS 11+ Catalyst 14+ tvOS 15+ watchOS 9 veya sonraki sürümler
App Check
özel sağlayıcılar ve hata ayıklama sağlayıcıları
App Check
reCAPTCHA sağlayıcı
App Distribution
Authentication kısmi kısmi kısmi kısmi kısmi
Cloud Firestore Yalnızca kaynak dağıtımları
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
Firebase kurulum
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config
SQL Connect 2
DESTEĞİ SONLANDIRILMIŞ VEYA DESTEKLENMEYEN KİTAPLIKLAR
Dynamic Links
Firebase ML Model İndirici

1 Firebase AI Logic, daha önce "Vertex AI in Firebase" olarak adlandırılıyordu.

2 Firebase SQL Connect, daha önce "Firebase Data Connect" olarak adlandırılıyordu.

Uygulama klipleri

Çoğu Firebase kitaplığı, bir Uygulama Klibi hedefinde derlenip çalıştırılır ancak birçoğu, temel OS kısıtlamaları nedeniyle kısıtlanır. Bilinen sorunlar şunlardır:

  • Dynamic Links, uygulamayı yüklemeden bir bağlantıya dokunan kullanıcıları uygulama klibine yönlendiremez.
  • Firestore ve Realtime Database, temel bir CFStream bağımlılığı nedeniyle Uygulama Klipleri'ne veri yükleyemez.

Bilinen tüm Uygulama Klibi sorunlarının listesi için Firebase GitHub deposuna bakın.

GoogleService-Info.plist

Firebase'i Apple projenize eklerken GoogleService-Info.plist yapılandırma dosyasını projenize eklemeniz gerekir. Tek bir uygulamada birden fazla Firebase projesi kullanmak istiyorsanız birden fazla proje yapılandırma ile ilgili belgelere göz atın.

Firebase uygulaması başlatma işlemi hakkında daha fazla bilgi edinmek için Swift referans belgelerine göz atın.

Swift Package Manager

Swift Package Manager entegrasyonu hakkında daha fazla bilgi edinmek için kılavuzumuzu inceleyin.

Swift Uzantıları

Firebase Apple platformu SDK'sı Swift uzantıları, daha önce mevcut Firebase Apple platformu kitaplıklarına yönelik küçük, açık kaynak eklentilerdi. Bu eklentiler, kodunuzun Swift diline özgü özellikleri kullanmasına olanak tanıyordu. Bu API'ler daha sonra doğrudan ana kitaplıklara eklendi ve ayrı olarak eklenmeleri gerekmiyor. Kod tabanınızda daha önce Swift uzantısı SDK'sı varsa yükseltme talimatları için geçiş rehberini inceleyin.

SwiftUI

Firebase, SwiftUI'yi tam olarak destekler ancak Firebase'in tamamen SwiftUI ortamında doğru şekilde çalışması için kurulum, UIKit uygulamalarından biraz farklı olacaktır. Daha fazla bilgi için Peter Friese'nin bu blog yayınına göz atın.

SwiftUI uygulamaları, bilinen bir sorun nedeniyle swizzling'i devre dışı bırakmalıdır. Daha fazla bilgi için uygulama temsilcisi swizzling bölümüne bakın.

Uygulama temsilcisi swizzling işlemi

Firebase, FCM ve APNs jetonu gibi belirli Firebase hizmetlerini OS geri çağırmalarına otomatik olarak bağlamak için uygulamanızın uygulama temsilcisi sınıfındaki bazı yöntemleri değiştirir. Uygulamanızın Info.plist dosyasına FirebaseAppDelegateProxyEnabled işaretini ekleyip NO olarak ayarlayarak uygulamanızda swizzling'i devre dışı bırakabilirsiniz.

Dört Firebase ürünü, App Delegate swizzling yöntemini kullanır: Analytics, App Distribution, Authentication ve FCM. Uygulamanızda swizzling'i devre dışı bıraktıysanız ve aşağıdaki ürünlerden herhangi birini kullanıyorsanız ürünü swizzling olmadan nasıl kullanacağınızı öğrenmek için ürüne özel kılavuzu inceleyin:

iOS 14'ü destekleme

iOS 14, kullanıcının reklam kimliğiyle ilgili kullanıcı izinlerinde yeni değişiklikler içeriyor. Uygulamanızın etkilenip etkilenmeyeceği hakkında daha fazla bilgi için iOS 14'e hazırlanma kılavuzuna bakın.

Objective-C için sürekli destek

Firebase, Apple platformları belgelerimizin bakımını kolaylaştırmak için kılavuzlarımızda ve diğer geliştirici materyallerimizde Swift snippet'lerine ve kod örneklerine odaklanmaya karar verdi. Objective-C snippet'leri 1 Ocak 2024'ten itibaren kılavuzlarımızdan kaldırılacak. Tüm Firebase ürünleri için Objective-C ile ilgili güncel referans dokümanları sunmaya devam edeceğiz.

Firebase Apple platformu SDK'ları için açık kaynak kaynaklar

Firebase, açık kaynaklı geliştirmeyi destekler. Topluluğun katkılarını ve geri bildirimlerini teşvik ederiz.

Firebase Apple platform SDK'ları

Analytics hariç Apple platformları için tüm Firebase SDK'ları, herkese açık Firebase GitHub depomuzda açık kaynak kitaplıklar olarak geliştirilmiştir.

FirebaseUI

FirebaseUI, Firebase üzerine inşa edilmiş bir dizi yardımcı kitaplıktır. Bu kitaplıklar arasında, kimlik doğrulama için hazır bir kullanıcı arayüzü akışı ve Cloud Firestore ile Realtime Database için veri yardımcı programları bulunur. FirebaseUI hakkında daha fazla bilgiyi GitHub sayfamızda bulabilirsiniz.

Hızlı başlangıç örnekleri

Firebase, iOS'teki çoğu Firebase API'si için hızlı başlangıç örnekleri koleksiyonu sunar. Bu hızlı başlangıç kılavuzlarını herkese açık Firebase GitHub hızlı başlangıç deposunda bulabilirsiniz.

Her bir hızlı başlangıç kılavuzunu Xcode'da açıp mobil cihazda veya simülatörde çalıştırabilirsiniz. Dilerseniz bu hızlı başlangıç kılavuzlarını Firebase SDK'larını kullanmak için örnek kod olarak da kullanabilirsiniz.