Informacje o Firebase na platformach Apple

Podczas tworzenia aplikacji na Apple przy użyciu Firebase możesz natknąć się na pojęcia, które są Ci nieznane lub specyficzne dla Firebase. Ta strona ma na celu odpowiedzieć na te pytania lub wskazać źródła, w których znajdziesz więcej informacji.

Jeśli masz pytania na temat, którego nie omawiamy na tej stronie, możesz odwiedzić jedną z naszych społeczności online. Będziemy też okresowo aktualizować tę stronę o nowe tematy, więc sprawdzaj, czy nie dodaliśmy tematu, o którym chcesz się dowiedzieć więcej.

Obsługa bibliotek Firebase według platformy

W tabeli poniżej znajdziesz informacje o tym, które biblioteki Firebase są zgodne z poszczególnymi platformami Apple. Obecnie visionOS i watchOS są obsługiwane tylko przez społeczność. Instrukcje instalacji i znane problemy znajdziesz w publicznym repozytorium GitHub pakietu SDK Firebase na platformy Apple.

Biblioteka iOS macOS Mac
Catalyst
tvOS visionOS watchOS
A/B Testing
Firebase AI Logic 1 iOS 15 lub nowszy macOS 12 lub nowszy Catalyst 15 lub nowszy tvOS 15 lub nowszy (pomoc od społeczności) watchOS 8 lub nowszy
Analytics wersja 8.9.0 lub nowsza wersja 8.9.0 lub nowsza wersja 8.9.0 lub nowsza
Analytics bez identyfikatora reklamowego wersja 8.9.0 lub nowsza wersja 8.9.0 lub nowsza wersja 8.9.0 lub nowsza
Analytics konwersja na urządzeniu
Dostawca DeviceCheckApp Check watchOS 9 lub nowszy
Dostawca App Attest w usłudze App Check App Check iOS 14 lub nowszy macOS 11 lub nowszy Catalyst 14 lub nowszy tvOS 15 lub nowszy watchOS 9 lub nowszy
App Check dostawcy niestandardowi i debugowania
App Distribution
Authentication częściowa częściowa częściowa częściowa częściowa
Cloud Firestore Tylko dystrybucje źródłowe
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
SQL Connect 2
Dynamic Links
Firebase instalacje
Firebase ML Pobieranie modeli
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config

1 Firebase AI Logic nazywała się wcześniej "Vertex AI in Firebase".

2 Firebase SQL Connect nazywała się wcześniej "Firebase Data Connect".

Wycinki aplikacji

Większość bibliotek Firebase będzie się kompilować i działać w przypadku wycinka aplikacji, ale wiele z nich jest ograniczonych ze względu na ograniczenia systemu operacyjnego. Znane problemy:

  • Dynamic Links nie mogą przekierowywać użytkowników do wycinka aplikacji, jeśli klikną link bez zainstalowanej aplikacji.
  • Firestore i Baza danych czasu rzeczywistego nie mogą wczytywać danych w wycinkach aplikacji ze względu na zależność od CFStream.

Pełną listę znanych problemów z wycinkami aplikacji znajdziesz w repozytorium Firebase na GitHubie.

GoogleService-Info.plist

W ramach dodawania Firebase do projektu Apple musisz dodać do niego plik konfiguracyjny GoogleService-Info.plist. Jeśli chcesz używać w jednej aplikacji kilku projektów Firebase, zapoznaj się z dokumentacją dotyczącą konfigurowania wielu projektów.

Więcej informacji o procesie inicjowania aplikacji w Firebase znajdziesz w dokumentacji referencyjnej Swift.

Swift Package Manager

Więcej informacji o integracji z menedżerem pakietów Swift znajdziesz w naszym przewodniku.

Rozszerzenia Swift

Rozszerzenia Swift pakietu SDK Firebase na platformy Apple były wcześniej niewielkimi dodatkami typu open source do istniejących bibliotek Firebase na platformy Apple, które umożliwiały używanie w kodzie funkcji specyficznych dla języka Swift. Te interfejsy API zostały już dodane bezpośrednio do głównych bibliotek i nie trzeba ich uwzględniać osobno. Jeśli w bazie kodu masz pakiet SDK rozszerzenia Swift, zapoznaj się z przewodnikiem po migracji , aby uzyskać instrukcje dotyczące uaktualnienia.

SwiftUI

Firebase w pełni obsługuje SwiftUI, ale konfiguracja będzie się nieco różnić od konfiguracji aplikacji UIKit, aby Firebase działało prawidłowo w środowisku SwiftUI. Więcej informacji znajdziesz w tym poście na blogu Petera Friese.

Ze względu na a znany problem aplikacje SwiftUI muszą wyłączyć swizzling. Więcej informacji znajdziesz w sekcji dotyczącej swizzlingu w delegacie aplikacji.

Swizzling w delegacie aplikacji

Firebase wykonuje swizzling niektórych metod w klasie delegata aplikacji, aby automatycznie łączyć niektóre usługi Firebase z wywołaniami zwrotnymi systemu operacyjnego, takimi jak FCM i token APNs. Możesz wyłączyć swizzling w aplikacji, dodając flagę FirebaseAppDelegateProxyEnabled w pliku Info.plist aplikacji i ustawiając ją na NO.

4 usługi Firebase korzystają ze swizzlingu w delegacie aplikacji: Analytics, App Distribution, Authentication, i FCM. Jeśli w aplikacji wyłączono swizzling i używasz którejś z tych usług, zapoznaj się z przewodnikiem dotyczącym danej usługi, aby dowiedzieć się, jak jej używać bez swizzlingu:

Obsługa iOS 14

iOS 14 wprowadza nowe zmiany w uprawnieniach użytkownika dotyczących identyfikatora wyświetlania reklam. Więcej informacji o tym, czy Twoja aplikacja może być objęta tymi zmianami, znajdziesz w przewodniku Przygotowanie do iOS 14.

Bieżąca obsługa Objective-C

Aby ułatwić utrzymanie dokumentacji platform Apple, Firebase postanowiło skupić się na fragmentach kodu i przykładach kodu w Swift w naszych przewodnikach i innych materiałach dla deweloperów. Fragmenty kodu w Objective-C zostaną usunięte z naszych przewodników 1 stycznia 2024 r. Będziemy nadal aktualizować dokumentację referencyjną dla Objective-C dla wszystkich usług Firebase.

Zasoby open source dotyczące pakietów SDK Firebase na platformy Apple

Firebase obsługuje rozwój open source i zachęcamy społeczność do współtworzenia i przesyłania opinii.

Pakiety SDK Firebase na platformy Apple

Wszystkie pakiety SDK Firebase na platformy Apple z wyjątkiem Analytics są opracowywane jako biblioteki open source w naszym publicznym repozytorium Firebase na GitHubie.

FirebaseUI

FirebaseUI to zestaw bibliotek narzędziowych opartych na Firebase, w tym gotowy interfejs do uwierzytelniania i narzędzia do obsługi danych w Cloud Firestore i Realtime Database. Więcej informacji o FirebaseUI znajdziesz na naszej stronie na GitHubie.

Przykłady szybkiego startu

Firebase utrzymuje kolekcję przykładów szybkiego startu dla większości interfejsów API Firebase na iOS. Te przykłady znajdziesz w naszym publicznym repozytorium Firebase na GitHubie .

Każdy przykład szybkiego startu możesz otworzyć w Xcode, a następnie uruchomić go na urządzeniu mobilnym lub symulatorze. Możesz też użyć tych przykładów jako kodu do korzystania z pakietów SDK Firebase.