Informacje o Firebase na platformach Apple

Podczas tworzenia aplikacji na Apple za pomocą Firebase możesz napotkać pojęcia, które są Ci nieznane lub charakterystyczne dla Firebase. Na tej stronie znajdziesz odpowiedzi na te pytania lub informacje o dodatkowych zasobach.

Jeśli masz pytania dotyczące tematu, który nie jest omówiony na tej stronie, odwiedź jedną z naszych społeczności online. Co jakiś czas będziemy też aktualizować tę stronę o nowe tematy, więc zaglądaj tu, aby sprawdzić, czy dodaliśmy temat, który Cię interesuje.

Obsługa biblioteki Firebase według platformy

W tabeli poniżej opisano, które biblioteki Firebase są zgodne z którymi platformami Apple. Obecnie systemy visionOS i watchOS są obsługiwane tylko przez społeczność. Instrukcje instalacji i informacje o znanych problemach znajdziesz w repozytorium pakietu SDK Firebase dla platform Apple na GitHubie.

Biblioteka iOS macOS Mac
Catalyst
tvOS visionOS watchOS
A/B Testing
Analytics Wersja 8.9.0 lub nowsza Wersja 8.9.0 lub nowsza Wersja 8.9.0 lub nowsza
Analytics bez identyfikatora reklamy 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 Usługodawca DeviceCheck watchOS 9 lub nowszy
App Check Dostawca usługi App Attest iOS 14 lub nowszy macOS 11 lub nowszy Catalyst 14+ tvOS 15 i nowsze watchOS 9 lub nowszy
App Check dostawcy niestandardowi i debugujący
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
Dynamic Links
Firebase instalacji
Firebase ML Model Downloader
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config
Vertex AI in Firebase iOS 15 lub nowszy macOS 12 lub nowszy Catalyst 15+ tvOS 15 lub nowszy (tylko pomoc od społeczności) watchOS 8 lub nowszy

Klipy z aplikacji

Większość bibliotek Firebase będzie kompilowana i uruchamiana w docelowym App Clip, ale wiele z nich jest ograniczona ze względu na ograniczenia systemu operacyjnego. Znane problemy:

  • Dynamiczne linki nie mogą wysyłać użytkowników do klipu aplikacji, jeśli klikną link bez zainstalowanej aplikacji.
  • Firestore i Baza danych czasu rzeczywistego nie mogą wczytywać danych w aplikacji Clip ze względu na zależność od CFStream.

Pełna lista znanych problemów z aplikacją App Clip znajduje się w repozytorium GitHub Firebase.

GoogleService-Info.plist

W ramach dodawania Firebase do projektu Apple musisz dodać do projektu plik konfiguracji GoogleService-Info.plist. Jeśli chcesz używać w jednej aplikacji wielu projektów Firebase, zapoznaj się z dokumentacją dotyczącą konfigurowania wielu projektów.

Więcej informacji o procesie inicjowania aplikacji Firebase znajdziesz w dokumentacji na temat Swifta.

Menedżer pakietów Swift

Więcej informacji o integracji z menedżerem pakietów Swift znajdziesz w tym przewodniku.

Rozszerzenia Swift

Rozszerzenia Swift pakietu SDK Firebase na platformę Apple to niewielkie, otwarte dodatki do istniejących bibliotek Firebase na platformę Apple, które umożliwiają korzystanie z funkcji języka Swift. Te interfejsy API zostały od tego czasu dodane bezpośrednio do głównych bibliotek i nie trzeba ich uwzględniać osobno. Jeśli w swojej bazie kodu masz pakiet SDK rozszerzenia Swift, zapoznaj się z przewodnikiem po migracji, aby dowiedzieć się, jak przejść na nową wersję.

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 pełnym środowisku SwiftUI. Więcej informacji znajdziesz w tym poście na blogu autorstwa Petera Friese.

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

Przełączanie delegata aplikacji

Firebase zamienia niektóre metody w klasie aplikacji w aplikacji, aby automatycznie łączyć niektóre usługi Firebase z funkcjami zwrotnymi systemu, takimi jak FCM i token APN. Możesz wyłączyć swizlowanie w aplikacji, dodając flagę FirebaseAppDelegateProxyEnabled w pliku Info.plist aplikacji i ustawiając ją na NO.

Cztery usługi Firebase korzystają z podmieniania delegata aplikacji: Analytics, App Distribution, AuthenticationFCM. Jeśli masz wyłączone swizelowanie w aplikacji i korzystasz z jednego z tych usług, zapoznaj się z poniższym przewodnikiem, aby dowiedzieć się, jak korzystać z usługi bez swizelowania:

Obsługa systemu iOS 14

iOS 14 zawiera nowe zmiany w uprawnieniach użytkownika dotyczących jego identyfikatora reklamowego. Więcej informacji o tym, czy Twoja aplikacja może być dotknięta, znajdziesz w przewodniku na temat przygotowań do iOS 14.

Ciągłe wsparcie dla Objective-C

Aby ułatwić utrzymanie dokumentacji na platformach Apple, Firebase zdecydowało się skupić w swoich przewodnikach i innych materiałach dla deweloperów na fragmentach kodu i przykładach kodu w Swift. Od 1 stycznia 2024 r. fragmenty kodu Objective-C zostaną usunięte z naszych przewodników. Będziemy nadal utrzymywać aktualną dokumentację referencyjną dla Objective-C we wszystkich usługach Firebase.

Zasoby typu open source dla pakietów SDK Firebase na platformę Apple

Firebase obsługuje tworzenie oprogramowania typu open source i zachęcamy do korzystania z usług społeczności oraz do przesyłania opinii.

Pakiety SDK Firebase na platformę Apple

Wszystkie pakiety SDK Firebase na platformy Apple (z wyjątkiem pakietu Analytics) są opracowywane jako biblioteki open source w naszym publicznym repozytorium GitHub Firebase.

FirebaseUI

FirebaseUI to zestaw bibliotek narzędzi opartych na Firebase, w tym gotowy przepływ interfejsu użytkownika do uwierzytelniania oraz narzędzia do obsługi danych w przypadku Cloud FirestoreRealtime Database. Więcej informacji o FirebaseUI znajdziesz na naszej stronie GitHub.

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 przewodniki znajdziesz w publicznym repozytorium GitHub Firebase.

Każdy krótki przewodnik możesz otworzyć w Xcode, a potem uruchomić na urządzeniu mobilnym lub w symulatorze. Możesz też użyć tych samouczków jako przykładowego kodu do korzystania z pakietów SDK Firebase.