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, który nie został omówiony na tej stronie, odwiedź jedną z naszych społeczności internetowych . Będziemy również okresowo aktualizować tę stronę o nowe tematy, więc sprawdzaj ponownie, czy dodaliśmy temat, 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 Firebase, wtyczki i zależności do Twojego projektu Android — wszystko z poziomu Android Studio!

Postępuj zgodnie z instrukcjami na stronie Wprowadzenie do Androida, aby użyć Asystenta Firebase. Upewnij się, że używasz najnowszych wersji zarówno Android Studio, jak i Firebase Assistant (przejdź do Plik > Sprawdź aktualizacje ).

Gdy wybierzesz określone produkty Firebase, które chcesz dodać do swojej aplikacji, Asystent Firebase automatycznie zadeklaruje 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, możesz chcieć wprowadzić ręczne zmiany w tych zależnościach:

  • Jeśli chcesz używać Firebase Android BoM , zaktualizuj zależności w pliku Gradle modułu (na poziomie aplikacji) (zazwyczaj app/build.gradle ), aby zaimportować platformę BoM. Musisz także usunąć wersje z każdej linii zależności biblioteki Firebase.

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

Usługi Google — wtyczka i plik konfiguracyjny

W ramach dodawania Firebase do swojego projektu na Androida musisz dodać wtyczkę google-services i plik konfiguracyjny google-services.json do swojego projektu.

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

Odwiedź dokumentację systemu Android, 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 bibliotek Firebase poprzez określenie tylko jednej wersji — wersji BoM.

Gdy korzystasz z Firebase BoM w swojej aplikacji, BoM automatycznie pobiera poszczególne wersje bibliotek 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, zaktualizują się do wersji zmapowanych na tę wersję BoM.

Aby dowiedzieć się, które wersje bibliotek Firebase są zmapowane do określonej wersji BoM, zapoznaj się z informacjami o wersji dla tej wersji BoM. Jeśli chcesz porównać wersje bibliotek odwzorowane 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 .

Oto jak używać Firebase Android BoM do deklarowania zależności w pliku Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle ). Korzystając z zestawienia komponentów, nie określa się poszczególnych wersji bibliotek w wierszach zależności.

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

  // 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 często zadawanych pytań dotyczących korzystania z Firebase Android BoM:

Porównaj wersje Firebase BoM

Biblioteki rozszerzeń Kotlina (KTX).

Biblioteki rozszerzeń Firebase Kotlin (KTX) są niewielkimi dodatkami do podstawowych zestawów SDK Firebase, które umożliwiają pisanie pięknego i idiomatycznego kodu Kotlin.

Aby używać biblioteki KTX w swojej aplikacji, zmień 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:32.3.1')

  // 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 (przy użyciu 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żywając 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ź dokumenty referencyjne API dla bibliotek KTX.

Moduły funkcji i dostarczanie funkcji Play

Od maja 2021 r. (Firebase BoM v28.0.0) zestawów SDK Firebase na Androida można używać w modułach funkcji dynamicznych, które są instalowane oddzielnie 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-beta03'
}

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

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

Podczas korzystania z zestawów SDK Firebase w modułach funkcji należy pamiętać o następujących zastrzeżeniach:

  • Produkty takie jak Linki dynamiczne lub Firebase do przesyłania wiadomości w aplikacji, które opierają się na zdarzeniu Analytics first_open , mogą przegapić to zdarzenie, jeśli są używane w module funkcji dynamicznych.

  • W przypadku jednoczesnego korzystania z Cloud Firestore i uwierzytelniania należy zawsze umieszczać je w tym samym module. Jeśli nie jest to możliwe, upewnij się, że uwierzytelnianie jest ładowane przed Cloud Firestore; w przeciwnym razie niektóre operacje Cloud Firestore mogą mieć nieprawidłowy stan uwierzytelniania.

  • Gdy używasz firebase-crashlytics-ndk jako zależności modułu funkcji dynamicznych, musisz ustawić właściwość unstrippedNativeLibsDir w pliku build.gradle aplikacji, zgodnie z opisem w dokumentacji Crashlytics NDK .

Aby uzyskać więcej informacji na temat modułów funkcji i dostarczania funkcji Play, odwiedź Omówienie dostarczania funkcji Play .

Usługi Google Wtyczka Gradle a usługi Google Play a Sklep Google Play

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

Wtyczka Gradle usług Google
Wtyczka Gradle ( com.google.gms.google-services ), która działa w czasie kompilacji, aby upewnić się, że Twoja aplikacja ma odpowiednią konfigurację, aby uzyskać dostęp do Firebase i Google API
Pomimo swojej nazwy ta wtyczka 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 jej działania.
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 działająca na urządzeniu z Androidem i udostępniająca kilka popularnych interfejsów API Google (takich jak Mapy Google i Logowanie przez Google) aplikacjom na urządzeniu
Dzięki centralizacji tych wspólnych interfejsów API w ramach jednej usługi zmniejsza się 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 nie tylko na urządzenie z Androidem
Jako programista zarządzasz dystrybucją, wydaniami itp. swojej aplikacji za pośrednictwem Konsoli Google Play. Jeśli urządzenie ma Sklep Google Play, uruchamia również usługi Google Play (patrz poprzedni wpis). Dowiedz się więcej o Sklepie Google Play dla programistów .
Usługi gier Google Play
Zestaw interfejsów 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 dla zestawów SDK Firebase na Androida

Firebase wspiera rozwój open source i zachęcamy społeczność do wnoszenia wkładów i opinii.

SDK Firebase na Androida

Większość zestawów SDK Firebase na Androida opracowano jako biblioteki open source w naszym publicznym repozytorium GitHub Firebase . Aktywnie pracujemy nad przeniesieniem pozostałych prywatnych bibliotek Firebase do naszego publicznego GitHub wkrótce!

Próbki szybkiego startu

Firebase przechowuje zbiór przykładów szybkiego startu dla większości interfejsów API Firebase na Androida. Te krótkie wprowadzenie znajdziesz w naszym publicznym repozytorium szybkich startów Firebase GitHub .

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

Inne interesujące tematy