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.