Informacje o Firebase na platformach Apple

Podczas tworzenia aplikacji na urządzenia Apple za pomocą Firebase możesz napotkać pojęcia, które są Ci nieznane lub są specyficzne dla Firebase. Na tej stronie znajdziesz odpowiedzi na te pytania lub materiały, które pomogą Ci dowiedzieć się więcej.

Jeśli masz pytania na temat, który nie został omówiony na tej stronie, odwiedź jedną z naszych społeczności online. Będziemy też okresowo aktualizować tę stronę o nowe tematy, więc sprawdzaj, czy dodaliśmy temat, który Cię interesuje.

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. Na razie systemy 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+ tvOS 15 lub nowszy (tylko pomoc od społeczności) watchOS 8 lub nowszy,
Analytics 8.9.0 i nowsze 8.9.0 i nowsze 8.9.0 i nowsze
Analytics bez identyfikatora reklamy 8.9.0 i nowsze 8.9.0 i nowsze 8.9.0 i nowsze
Analytics konwersja na urządzeniu
App Check
Dostawca DeviceCheck
watchOS 9 lub nowszy,
App Check
Dostawca App Attest
iOS 14+ macOS 11 lub nowszy, Catalyst 14+ tvOS 15 lub nowszy, watchOS 9 lub nowszy,
App Check
dostawcy niestandardowi i debugowania
Dostawca: App Check
reCAPTCHA
App Distribution
Authentication częściowe częściowe częściowe częściowe częściowe
Cloud Firestore Tylko dystrybucje źródłowe
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
Instalacje: Firebase
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config
SQL Connect 2
WYCOFANE LUB NIEOBSŁUGIWANE BIBLIOTEKI
Dynamic Links
Narzędzie do pobierania modelu Firebase ML

1 Firebase AI Logic wcześniej nosił nazwę „Vertex AI in Firebase”.

2 Firebase SQL Connect wcześniej nosił nazwę „Firebase Data Connect”.

Wycinki aplikacji

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

  • Linki dynamiczne nie mogą kierować użytkowników do wycinka aplikacji, jeśli klikną oni link bez zainstalowanej aplikacji.
  • Firestore i Baza danych czasu rzeczywistego nie mogą wczytywać danych w App Clips z powodu zależności 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 konfiguracji GoogleService-Info.plist. Jeśli chcesz używać wielu projektów w Firebase w jednej aplikacji, zapoznaj się z dokumentacją dotyczącą konfigurowania wielu projektów.

Więcej informacji o procesie inicjowania aplikacji 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 małymi dodatkami open source do istniejących bibliotek Firebase na platformy Apple, które umożliwiały korzystanie w kodzie z funkcji języka Swift. Te interfejsy API zostały dodane bezpośrednio do głównych bibliotek i nie trzeba ich uwzględniać osobno. Jeśli w bazie kodu masz już pakiet SDK rozszerzenia Swift, instrukcje uaktualnienia znajdziesz w przewodniku po migracji.

SwiftUI

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

Aplikacje SwiftUI muszą wyłączyć swizzling z powodu znanego problemu. Więcej informacji znajdziesz w sekcji Swizzling delegata aplikacji.

Metoda App delegate swizzling

Firebase podmienia niektóre metody w klasie delegata aplikacji, aby automatycznie łączyć określone 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.

Z metody App Delegate swizzling korzystają 4 usługi Firebase: Analytics, App Distribution, Authentication i FCM. Jeśli w aplikacji masz wyłączone podmienianie i używasz dowolnego z tych usług, zapoznaj się z odpowiednim przewodnikiem, aby dowiedzieć się, jak korzystać z usługi bez podmieniania:

Obsługa systemu iOS 14

W systemie iOS 14 wprowadzono zmiany dotyczące zgody użytkownika związanej z identyfikatorem wyświetlania reklam. Więcej informacji o tym, czy może to mieć wpływ na Twoją aplikację, znajdziesz w przewodniku po przygotowywaniu aplikacji na iOS 14.

Dalsza obsługa Objective-C

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

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

Firebase wspiera rozwój oprogramowania typu open source i zachęca społeczność do przesyłania opinii i sugestii.

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

FirebaseUI

FirebaseUI to zestaw bibliotek narzędziowych opartych na Firebase, który obejmuje gotowy przepływ interfejsu do uwierzytelniania oraz narzędzia do obsługi danych dla Cloud Firestore i Realtime Database. Więcej informacji o FirebaseUI znajdziesz na naszej stronie w GitHubie.

Przykłady krótkich wprowadzeń

Firebase udostępnia kolekcję przykładów szybkiego startu dla większości interfejsów API Firebase na iOS. Te krótkie wprowadzenia znajdziesz w naszym publicznym repozytorium krótkich wprowadzeń Firebase na GitHubie.

Każdy z nich możesz otworzyć w Xcode, a następnie uruchomić na urządzeniu mobilnym lub w symulatorze. Możesz też użyć tych krótkich wprowadzeń jako przykładowego kodu do korzystania z pakietów SDK Firebase.