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 zadać je w jednej z naszych społeczności online. Będziemy też okresowo aktualizować tę stronę o nowe tematy, więc sprawdzaj, czy nie dodaliśmy tematu, który Cię interesuje.
Obsługa bibliotek Firebase na poszczególnych platformach
W tabeli poniżej znajdziesz informacje o tym, które biblioteki Firebase są zgodne z poszczególnymi platformami Apple. Obecnie platformy 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+ | macOS 12+ | Catalyst 15+ | tvOS 15+ (pomoc od społeczności) | watchOS 8+ | |
| 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 | ||||||
| App Check dostawca DeviceCheck |
watchOS 9+ | |||||
| App Check dostawca App Attest |
iOS 14+ | macOS 11+ | Catalyst 14+ | tvOS 15+ | watchOS 9+ | |
| App Check dostawcy niestandardowi i debugowania |
||||||
| App Check reCAPTCHA dostawca |
||||||
| 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 | ||||||
| Firebase instalacje | ||||||
| In-App Messaging | ||||||
| Performance Monitoring | ||||||
| Realtime Database | ||||||
| Remote Config | ||||||
| SQL Connect 2 | ||||||
| WYCOFANE LUB NIEOBSŁUGIWANE BIBLIOTEKI | ||||||
| Dynamic Links | ||||||
| Firebase ML Pobieranie modeli | ||||||
1 Firebase AI Logic nazywało się wcześniej "Vertex AI in Firebase".
2 Firebase SQL Connect nazywało 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ć 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 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 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 utrzymywać aktualną 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ą rozwijane 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 znajdziesz w naszym publicznym repozytorium Firebase na GitHub quickstart.
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.