Bu sayfa, Firebase'i kullanırken karşılaşabileceğiniz Apple platformuna özgü sorunlar için ipuçları ve sorun giderme sunar.
Başka zorluklarınız mı var veya sorununuzu aşağıda ana hatlarıyla göremiyor musunuz? Daha fazla Pan-Firebase veya ürüne özel SSS için ana Firebase SSS'ye göz atmayı unutmayın.
Bildirilen sorunların ve sorun gidermenin güncel bir listesi için Firebase Apple platformları SDK GitHub deposuna da göz atabilirsiniz. Kendi Firebase Apple platformları SDK'nızla ilgili sorunları da burada dosyalamanızı öneririz!
Firebase hangi Xcode sürümlerini destekliyor?
Firebase, Apple'ın artık desteklemediği Xcode sürümleri hariç, en fazla iki ana Xcode sürümünü destekler. Örneğin, Mart 2019'dan itibaren, Apple tüm uygulamalarda en az iOS 12 gerektirdi, yani Xcode 9 desteği kaldırıldı ve desteklenen tek ana sürüm Xcode 10 oldu.
Xcode'un belirli küçük veya yama sürümlerini (örneğin, 9.2.0'dan 9.4.1'e) desteklemek için yapılan değişiklikler, Firebase Apple platformları SDK'sının gereksinimlerine ve bir geliştirici kullanım anketine göre belirlenir. Bu değişiklikler , Firebase Apple platformları SDK'sı sürüm notlarında ve Firebase Apple platformları SDK kurulum sayfasında yansıtılır.
SDK tarafından desteklenen minimum Xcode sürümünü görmek için Firebase'i Apple projenize ekleyin bölümünde listelenen gereksinimleri kontrol edin.
Xcode'un Beta sürümleri için Firebase desteği, "en iyi çaba" temelinde mevcuttur. Geliştiriciler, GitHub'daki Firebase Apple platformları SDK deposundaki sorunları izleyebilir ve gönderebilir.
Uygulamam, kullanıcıdan macOS'ta Anahtar Zinciri öğelerine erişmesi için parolasını ister. Bunu nasıl düzeltirim?
Firebase bağımlılığınızı sürüm 9.6.0 veya üstüne yükseltin ve [Anahtarlık Paylaşımı özelliğini](/docs/ios/troubleshooting-faq#macos-keychain-sharing) hedefinize ekleyin.
Firebase neden macOS'ta Anahtar Zinciri Paylaşımı özelliğini gerektiriyor?
Firebase SDK'ları, FCM için kullanılan Firebase kurulum kimliği gibi bilgileri depolamak için anahtarlık kullanır. Anahtar Zinciri erişimi olmadan Firebase SDK'ları düzgün çalışmayabilir. macOS anahtar zinciri, diğer platformlarda (iOS, tvOS, macCatalyst ve watchOS) kullanılan iOS tarzı anahtarlıktan farklı davranır.
macOS'ta uygulamalar, diğer uygulamalar ve işlemler tarafından değiştirilebilen, paylaşılan bir anahtarlık kullanır. İOS'tan farklı olarak, uygulamanın örtük erişimine sahip olduğu korumalı alanlı bir anahtarlık yoktur. Bu nedenle, bir Mac uygulaması anahtarlık ile etkileşime girdiğinde, Mac uygulaması kendi oluşturmadığı bir anahtarlık öğesini değiştiriyor olabileceğinden, sistem kullanıcıdan erişim ister. Bu tutarsızlığı gidermek için Firebase, uygulamaya bir anahtarlık erişim grubunun parçası olan bir anahtarlık öğesini sorgulamasını söyleyen
kSecUseDataProtectionKeychain anahtarıyla anahtar zincirini sorgular (bu, diğer platformlarda varsayılan davranıştır). Anahtar Zinciri Paylaşımı yeteneği gereklidir çünkü uygulamanın, hedefleri arasında paylaşılabilecek bir erişim grubunu sentezlemesine ihtiyacı vardır, böylece uygulamanın erişim grubundaki anahtarlık öğelerine serbestçe erişmesine izin verilir.
Daha fazla bilgi için Apple'ın Anahtar Zinciri belgelerine bakın.
Xcode sürüm 13 ve sonraki sürümlerde, UIKit uygulamalarım kaydettiğim bazı URL'leri neden açamıyor?
Info.plist'imde mi?
Apple,
Info.plist dosyalarında 50
LSApplicationQueriesSchemes girişi sınırı getirdi. 2015 yılında Apple, her uygulamanın yapabileceği URL sorgusu sayısını sınırlamak için
LSApplicationQueriesSchemes kullanıma sundu. Xcode 13'ün piyasaya sürülmesiyle bu sınırlar uygulanırken, Xcode 12 ve önceki sürümlerde şema sayısı için etkin bir sınır yoktu.
Firebase Authentication ve Firebase Dynamic Links gibi bazı Firebase ürünleri, uygulamanıza yeniden yönlendirme yapmak için özel URL şemalarının kullanılmasını gerektirir. Bu URL'ler, 50 bağlantı şeması sınırına önemli ölçüde dahil edilmemesi gereken kısa ve tutarlı bir URL şemasına uygundur.
50'den fazla
LSApplicationQueriesSchemes kaydetmeye devam eden uygulamalar için bazı şemaların sessizce yok sayılacağını unutmayın. Uygulama, eklendikleri sıraya bağlı olarak belirli derin bağlantıları yürütemeyebilir.