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 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 niestandardowi dostawcy i dostawcy 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 wycinków aplikacji, ale wiele z nich jest ograniczonych ze względu na ograniczenia systemu operacyjnego. Znane problemy:

  • Linki dynamiczne 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 GitHub.

GoogleService-Info.plist

W ramach dodawania Firebase do projektu Apple musisz dodać do niego plik konfiguracyjny GoogleService-Info.plist. Jeśli chcesz używać wielu projektów Firebase w jednej aplikacji, 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 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 delegata aplikacji.

Swizzling delegata aplikacji

Firebase swizzluje niektóre metody 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 delegata 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 aplikacji na 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 języku Swift w naszych przewodnikach i innych materiałach dla deweloperów. Od 1 stycznia 2024 r. fragmenty kodu w języku Objective-C zostaną usunięte z naszych przewodników. Będziemy nadal utrzymywać aktualną dokumentację referencyjną dla Objective-C dla wszystkich usług Firebase.

Źródła open source dotyczące pakietów SDK Firebase na platformy Apple

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

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 GitHub.

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 GitHub.

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 szybkiego startu znajdziesz w naszym publicznym repozytorium Firebase na GitHub przykładów szybkiego startu.

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.