Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Dowiedz się więcej o Androidzie i Firebase

Podczas opracowywania projektu na Androida przy użyciu Firebase możesz odkryć pojęcia, które są nieznane lub specyficzne dla Firebase. Ta strona ma na celu odpowiedzieć na te pytania lub wskazać zasoby, aby dowiedzieć się więcej.

Jeśli masz pytania dotyczące tematu nieomówionego na tej stronie, odwiedź jedną z naszych społeczności internetowych . Będziemy również okresowo aktualizować tę stronę o nowe tematy, więc sprawdź ponownie, czy nie dodaliśmy tematu, o którym chcesz się dowiedzieć!

Wtyczka Firebase Assistant dla Android Studio

Asystent Firebase to wtyczka Android Studio, która rejestruje Twoją aplikację na Androida w projekcie Firebase i dodaje niezbędne pliki konfiguracyjne, wtyczki i zależności Firebase do Twojego projektu na Androida — wszystko z poziomu Android Studio!

Postępuj zgodnie z instrukcjami na stronie z wprowadzeniem systemu Android, aby korzystać z Asystenta Firebase. Upewnij się, że korzystasz z najnowszych wersji Android Studio i Asystenta Firebase (przejdź do Plik > Sprawdź aktualizacje ).

Po wybraniu określonych produktów Firebase do dodania do aplikacji Asystent Firebase automatycznie deklaruje wymagane zależności w pliku app/build.gradle . Aby jednak korzystać z funkcji Firebase, które wykraczają poza obecne możliwości Asystenta Firebase, warto ręcznie wprowadzić pewne zmiany w tych zależnościach:

  • Jeśli chcesz korzystać z Firebase Android BoM , zaktualizuj zależności w pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle ), aby zaimportować platformę BoM. Musisz też usunąć wersje z każdego wiersza zależności biblioteki Firebase.

  • Jeśli chcesz użyć biblioteki rozszerzeń Kotlin , zmodyfikuj linię zależności dodaną do pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle ), aby ktx tego ktx wersji ktx biblioteki ktx .

Usługi Google — wtyczka i plik konfiguracyjny

W ramach dodanie Firebase do projektu Android, trzeba dodać google-services plugin i do google-services.json plik konfiguracyjny do projektu.

Jeśli dodasz Firebase do swojego projektu na Androida za pomocą konsoli Firebase , interfejsu Management REST API lub Firebase CLI , musisz ręcznie dodać wtyczkę i plik konfiguracyjny do swojego projektu. Jeśli jednak używasz Asystenta Firebase , te zadania są wykonywane automatycznie podczas konfiguracji.

Zapoznaj się z dokumentacją Androida, aby dowiedzieć się, jak współpracują ze sobą wtyczka usług Google i plik konfiguracyjny.

Firebase Android BoM (zestawienie materiałów)

Firebase Android BoM (Bill of Materials) umożliwia zarządzanie wszystkimi wersjami biblioteki Firebase przez określenie tylko jednej wersji — wersji BoM.

Gdy korzystasz z Firebase BoM w swojej aplikacji, BoM automatycznie pobiera poszczególne wersje biblioteki zmapowane na wersję BoM. Wszystkie poszczególne wersje bibliotek będą kompatybilne. Gdy zaktualizujesz wersję BoM w swojej aplikacji, wszystkie biblioteki Firebase, których używasz w swojej aplikacji, zostaną zaktualizowane do wersji zmapowanych na tę wersję BoM.

Aby dowiedzieć się, które wersje biblioteki Firebase są mapowane na konkretną wersję BoM, zapoznaj się z informacjami o wersji dla tej wersji BoM. Jeśli chcesz porównać wersje bibliotek zmapowane na jedną wersję BoM z inną wersją BoM, użyj poniższego widżetu porównania .

Dowiedz się więcej o wsparciu Gradle dla platform BoM .

Poniżej opisano, jak używać Firebase Android BoM do deklarowania zależności w pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle ). Używając BoM, nie określasz poszczególnych wersji bibliotek w wierszach zależności.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:28.1.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Oto kilka najczęściej zadawanych pytań dotyczących korzystania z Firebase Android BoM:

Porównaj wersje Firebase BoM

Biblioteki rozszerzeń Kotlin (KTX)

Biblioteki rozszerzeń Firebase Kotlin (KTX) są małymi towarzyszami podstawowych zestawów SDK Firebase, które pozwalają pisać piękny i idiomatyczny kod Kotlin.

Aby użyć biblioteki KTX w swojej aplikacji, zmień swoją zależność, tak aby zawierała sufiks -ktx . Każda biblioteka KTX automatycznie ma zależność od biblioteki podstawowej, więc nie ma potrzeby uwzględniania obu zależności w aplikacji.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:28.1.0')

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Każda biblioteka KTX zapewnia różne rozszerzenia składniowe biblioteki podstawowej. Na przykład biblioteka Analytics KTX ułatwia rejestrowanie zdarzeń:

Przed (korzystanie z biblioteki podstawowej)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Po (zamiast tego używamy biblioteki KTX)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Wszystkie produkty Firebase oferują bibliotekę KTX z wyjątkiem Firebase ML i indeksowania aplikacji.

Jeśli jeszcze tego nie zrobiłeś, sprawdź dokumentację API dla bibliotek KTX.

Moduły funkcji i dostarczanie funkcji Play

Od maja 2021 r. (Firebase BoM 28.0.0) pakiety Firebase Android SDK mogą być używane w dynamicznych modułach funkcji, które są instalowane niezależnie od podstawowego modułu aplikacji.

Aby włączyć obsługę dynamicznych modułów funkcji, dodaj następującą zależność do pliku build.gradle modułu podstawowego :

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta01'
}

Teraz, po dodaniu obsługi modułów dynamicznych, możesz dodać zależności pakietu Firebase SDK (z zestawem Firebase BoM lub bez niego), aby wyróżnić moduły swojej aplikacji i używać ich w normalny sposób.

Na przykład, jeśli aplikacja korzysta z bazy danych czasu rzeczywistego do obsługi określonej funkcji czasu rzeczywistego, można dodać zależność firebase-database do build.gradle modułu funkcji, a nie modułu podstawowego. Zmniejszy to rozmiar pobierania dla większości użytkowników.

Podczas korzystania z pakietów SDK Firebase w modułach funkcji pamiętaj o następujących zastrzeżeniach:

  • Crashlytics nie przechwytuje awarii NDK, gdy jest używany w module funkcji dynamicznych.

  • Produkty takie jak Dynamic Links lub first_open wiadomości w aplikacji, które opierają się na zdarzeniu first_open Analytics, mogą pominąć to zdarzenie, jeśli są używane w dynamicznym module funkcji.

  • Używając jednocześnie Cloud Firestore i uwierzytelniania, należy je zawsze uwzględniać w tym samym module. Jeśli nie jest to możliwe, upewnij się, że uwierzytelnianie zostało załadowane przed Cloud Firestore; w przeciwnym razie niektóre operacje Cloud Firestore mogą mieć nieprawidłowy stan uwierzytelniania.

Więcej informacji o modułach funkcji i dostarczaniu funkcji Play znajdziesz na stronie Omówienie dostarczania funkcji Play .

Usługi Google Wtyczka Gradle vs Usługi Google Play vs Sklep Google Play

Kilka elementów ekosystemu Google, Firebase i Android ma podobne konwencje nazewnictwa. Oto krótkie wyjaśnienie dla każdego z nich:

Wtyczka Gradle usług Google
Wtyczka Gradle ( com.google.gms.google-services ), która działa w czasie kompilacji, aby zapewnić, że Twoja aplikacja ma odpowiednią konfigurację umożliwiającą dostęp do interfejsów API Firebase i Google
Pomimo swojej nazwy wtyczka ta nie ma związku z usługami Google Play (patrz następny wpis) i nie ma wpływu na możliwości Twojej aplikacji w czasie wykonywania.
Ta wtyczka przetwarza również plik google-services.json , który dodajesz do swojej aplikacji w ramach konfigurowania Firebase. Dowiedz się więcej o wtyczce Gradle usług Google .
Usługi Google Play
Niewidoczna usługa działająca w tle, która działa na urządzeniu z Androidem i udostępnia kilka popularnych interfejsów API Google (takich jak Mapy Google i Logowanie Google) do aplikacji na urządzeniu
Scentralizowanie tych wspólnych interfejsów API w jednej usłudze zmniejsza rozmiar innych aplikacji i umożliwia urządzeniu otrzymywanie automatycznych aktualizacji zabezpieczeń i ulepszeń funkcji bez aktualizacji systemu operacyjnego. Dowiedz się więcej o usługach Google Play .
Sklep Google Play
Sklep do pobierania aplikacji, filmów, książek i innych materiałów na urządzenie z Androidem
Jako programista zarządzasz dystrybucją, wydaniami itp. swojej aplikacji za pośrednictwem Konsoli Google Play. Jeśli na urządzeniu jest sklep Google Play, są na nim również uruchomione usługi Google Play (patrz poprzedni wpis). Dowiedz się więcej o Sklepie Google Play dla programistów .
Usługi gier Google Play
Zestaw API dla twórców gier mobilnych
Dowiedz się więcej o usługach Gier Google Play i o tym, jak zintegrować Firebase z projektem usług Gier Google Play .

Zasoby typu open source dotyczące pakietów SDK Firebase na Androida

Firebase wspiera rozwój oprogramowania typu open source i zachęcamy do publikowania wkładów i opinii społeczności.

Pakiety SDK Firebase na Androida

Większość pakietów SDK Firebase na Androida jest opracowywanych jako biblioteki typu open source w naszym publicznym repozytorium Firebase na GitHub . Aktywnie pracujemy nad przeniesieniem pozostałych prywatnie opracowanych bibliotek Firebase do naszego publicznego serwisu GitHub!

Próbki szybkiego startu

Firebase utrzymuje kolekcję przykładów szybkiego startu dla większości interfejsów API Firebase na Androida. Znajdź te przewodniki szybkiego startu w naszym publicznym repozytorium przewodników szybkiego startu Firebase na GitHub .

Każdy przewodnik Szybki start można otworzyć jako projekt Android Studio, a następnie uruchomić go na urządzeniu mobilnym lub urządzeniu wirtualnym (AVD). Możesz też użyć tych przewodników Szybki start jako przykładowego kodu do korzystania z pakietów SDK Firebase.

Inne interesujące tematy