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.