Gdy pracujesz nad projektem na Androida za pomocą Firebase, możesz zauważyć, nieznanych jeszcze koncepcjom Firebase. Na tej stronie znajdziesz odpowiedzi lub wskazać materiały, z których można dowiedzieć się więcej.
Jeśli masz pytania dotyczące tematu, który nie został omówiony na tej stronie, odwiedź jednej z naszych społeczności online. Dodatkowo okresowo aktualizuj tę stronę o nowe tematy, dlatego odwiedzaj ją regularnie, dodał(a) temat, o którym chcesz dowiedzieć się więcej.
Wtyczka Firebase Assistant dla Android Studio
Asystent Firebase to wtyczka Android Studio, która rejestruje z projektem Firebase i dodaje niezbędne pliki konfiguracyjne Firebase, i wtyczki oraz zależności w projekcie Androida – a wszystko to z poziomu tego systemu. Studio.
Postępuj zgodnie z instrukcjami w stronie Pierwsze kroki z Androidem, aby skorzystać z Asystenta Firebase. Upewnij się, że używasz najnowszych wersji Android Studio i Asystent Firebase (kliknij Plik > Sprawdź dostępność aktualizacji).
Gdy wybierzesz konkretne usługi Firebase, które chcesz dodać do aplikacji, usługa Firebase
Asystent automatycznie deklaruje wymagane zależności w Twojej
app/build.gradle
. Aby jednak używać funkcji Firebase, które są wykraczające poza dostępne
do obecnych możliwości Asystenta Firebase, rozważ ręczne
zmiany tych zależności:
Jeśli chcesz używać Firebase Android BoM, zaktualizuj zależności w pliku Gradle (na poziomie modułu) (zwykle
app/build.gradle
), aby i zaimportować platformę BoM. Musisz też usunąć wersje z każdego Wiersz zależności biblioteki Firebase.Jeśli chcesz użyć biblioteki rozszerzeń Kotlin, zmodyfikuj zależność. do pliku Gradle modułu (na poziomie aplikacji) (zwykle
app/build.gradle
), aby zamiast niej używać biblioteki Firebase w wersjiktx
.
Usługi Google – wtyczka i plik konfiguracyjny
Aby dodać Firebase do swojego projektu na Androida, musisz dodać do
wtyczki google-services
i pliku konfiguracji
do
do swojego projektu.
Jeśli dodasz Firebase do swojego projektu na Androida za pomocą w konsoli Firebase, interfejs API typu REST do zarządzania lub interfejs wiersza poleceń Firebase, musisz ręcznie dodać wtyczkę i plik konfiguracyjny do swojego projektu. Jeśli jednak używasz Asystenta Firebase, te zadania są przeznaczone automatycznie wykonane za Ciebie podczas konfiguracji.
Odwiedź Dokumentacja Androida znajdziesz więcej informacji o współdziałaniu wtyczki usług Google i pliku konfiguracyjnego.
Firebase Android BoM (lista materiałów)
Firebase Android BoM (Bill of Materials – lista materiałów) umożliwia zarządzanie wersji biblioteki Firebase, określając tylko jedną wersję – wersji.
Gdy używasz w aplikacji BoM Firebase, automatycznie pobiera on: w poszczególnych wersjach biblioteki zmapowanych na wersję BoM. Wszystkie będą zgodne z poszczególnymi wersjami bibliotek. Po zaktualizowaniu BoM wszystkie biblioteki Firebase, których używasz w aplikacji, do wersji zmapowanej na tę wersję BoM.
Informacje o tym, które wersje biblioteki Firebase są zmapowane na konkretną wartość BoM zapoznaj się z informacjami o wersji Wersja BoM. Jeśli chcesz porównać wersje biblioteki zmapowane na jedną w porównaniu z inną wersją BoM, użyj widżet porównawczy poniżej.
Dowiedz się więcej o obsłudze Gradle na platformach BoM.
Oto jak za pomocą Firebase Android BoM zadeklarować zależności w
plik Gradle modułu (na poziomie aplikacji) (zwykle app/build.gradle
). Jeśli korzystasz z metody
nie musisz określać poszczególnych wersji biblioteki w wierszach zależności.
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:33.1.2')
// 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ęstszych pytań dotyczących korzystania z Firebase Android BoM:
Jak używać innej wersji biblioteki niż ta określona w BoM?
Oto jak zastąpić wersję biblioteki wyznaczoną w BM:
Cały czas w wierszu, aby zaimportować platformę BoM.
W wierszu zależności biblioteki określ żądaną wersję biblioteki. Dla: Oto jak zadeklarować zależności, jeśli chcesz użyć wersji 18.0.0 indeksowania aplikacji niezależnie od tego, jaka wersja została wskazana w BM, ale chcesz używać wersji BoM do Uwierzytelnianie i Cloud Firestore:
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:33.1.2')
// Declare the dependency for the App Indexing library and specify a version
// This specified library version overrides the version designated in the BoM.
implementation 'com.google.firebase:firebase-appindexing:18.0.0'
// Declare the dependencies for the other Firebase libraries without specifying versions
// These libraries will use the versions designated in the BoM.
implementation 'com.google.firebase:firebase-auth'
implementation 'com.google.firebase:firebase-firestore'
}
Czy BoM automatycznie dodaje wszystkie biblioteki Firebase do mojej aplikacji?
Nie. Aby dodać biblioteki Firebase i używać ich w aplikacji, musisz zadeklarować
każdej biblioteki jako osobnego wiersza zależności w Gradle modułu (na poziomie aplikacji)
(zwykle app/build.gradle
).
Dzięki BoM masz pewność, że wersje wszystkich bibliotek Firebase w są zgodne, ale BoM ich nie dodaje. biblioteki.
Czy biblioteki rozszerzeń Firebase Kotlin (KTX) są obsługiwane przez BoM?
Tak. Gdy zadeklarujesz konkretne wiersze zależności biblioteki Firebase, użyj nazwę biblioteki KTX, na przykład:
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:33.1.2')
// 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-ktx'
implementation 'com.google.firebase:firebase-firestore-ktx'
}
Czy mogę za pomocą BoM dodać biblioteki Androida, które nie pochodzą z Firebase?
Nie. BoM Firebase na Androida zarządza tylko wersjami bibliotek na potrzeby Firebase biblioteki. Jedynym wyjątkiem jest zastosowanie pakietu SDK do reklam mobilnych Google. ponieważ jest tak powszechnie używany w aplikacjach Firebase.
Dlaczego BoM jest zalecanym sposobem zarządzania wersjami biblioteki Firebase?
Każda biblioteka Firebase obsługuje różne wersje w różnych wersjach, ale można ją także tworzyć aby się upewnić, że najnowsza wersja każdej biblioteki jest zgodna z co reszta.
Zarządzanie wersjami biblioteki Firebase aplikacji za pomocą BoM trzeba śledzić, która wersja biblioteki Firebase jest zgodna z inną. Biblioteka Firebase.
Nawet jeśli obecnie używasz w aplikacji tylko jednej biblioteki Firebase, zalecamy korzystanie z BoM, ponieważ nigdy nie wiadomo, kiedy może się przydać kolejną bibliotekę Firebase.
Moja aplikacja używa Gradle w wersji starszej niż 5.0 – czy nadal mogę używać interfejsu BOM?
Tak, nadal możesz korzystać z BM! W przypadku Gradle w wersji 5.0 i nowszych obsługa BoM jest automatycznie włączone. Jednak we wcześniejszych wersjach Gradle musisz tylko włącz funkcję BoM i zaimportujesz BoM trochę inaczej.
Do pliku
settings.gradle
dodajenableFeaturePreview('IMPROVED_POM_SUPPORT')
Do pliku Gradle modułu (na poziomie aplikacji) (zwykle
app/build.gradle
), zaimportuj BoM jak zwykłą bibliotekę (bezplatform
), np.:dependencies {
// Import the Firebase BoM
implementation 'com.google.firebase:firebase-bom:33.1.2'
// 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'
}
Jak zgłosić problem lub przesłać opinię o BM?
Odwiedź repozytorium pakietu SDK Firebase na Androida w GitHubie.
Porównaj wersje Firebase BoM
Moduły biblioteki rozszerzeń Kotlin (KTX)
Moduły biblioteki rozszerzeń Firebase Kotlin (KTX) stanowią niewielkie dodatki głównych modułów biblioteki Firebase. Można ich używać do tworzenia idiomatyczny kod Kotlina.
Aby użyć modułu biblioteki KTX w aplikacji, zmień zależność, aby uwzględnić
Sufiks: -ktx
. Każdy moduł KTX automatycznie jest powiązany z głównym modułem
biblioteki, więc nie trzeba dodawać obu zależności do aplikacji.
dependencies {
// Import the BoM for the Firebase platform (learn more)
implementation platform('com.google.firebase:firebase-bom:33.1.2')// Declare the main module
implementation 'com.google.firebase:firebase-analytics'
// Declare the KTX module instead (which automatically has a dependency on the main module)
implementation 'com.google.firebase:firebase-analytics-ktx'
}
Każdy moduł KTX zawiera inne składniowe rozszerzenia modułu głównego. Na przykład moduł Analytics KTX ułatwia rejestrowanie zdarzeń:
Przed (w module głównym)
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 modułu)
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 usługi Firebase oferują Moduł KTX, z wyjątkiem Firebase ML i indeksowanie aplikacji.
Jeśli jeszcze nie znasz, przeczytaj Dokumentacja API dla modułów KTX.
Moduły funkcji i Play Feature Delivery
Od maja 2021 r. (Firebase BoM w wersji 28.0.0) pakiety SDK Firebase na Androida mogą być używane w modułach funkcji dynamicznych, które są instalowane niezależnie od modułu podstawowego modułu aplikacji.
Aby włączyć obsługę modułów funkcji dynamicznych, dodaj tę zależność
do pliku build.gradle
modułu base:
dependencies {
implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}
Po dodaniu obsługi modułów dynamicznych możesz dodać pakiet SDK Firebase zależności (z użyciem Firebase BoM lub bez) modułu funkcji w aplikacji i używać ich tak jak zwykle.
Jeśli na przykład Twoja aplikacja korzysta z Bazy danych czasu rzeczywistego do obsługi określonej
możesz dodać zależność firebase-database
do funkcji build.gradle
modułu funkcji, a nie modułu podstawowego. Zmniejszy to liczbę pobrań
rozmiar wyświetlany przez większość użytkowników.
Podczas korzystania z pakietów SDK Firebase w modułach funkcji pamiętaj o tych kwestiach:
Usługi takie jak Linki dynamiczne lub wysyłanie wiadomości w aplikacji Firebase, które korzystają z Analytics Zdarzenie
first_open
może pominąć to zdarzenie, jeśli jest używane w module funkcji dynamicznych.Jeśli używasz jednocześnie Cloud Firestore i uwierzytelniania, zawsze trzeba je uwzględnić w jednym module. Jeśli nie jest to możliwe, upewnij się, że jest wczytywany przed Cloud Firestore; w przeciwnym razie niektóre operacje w Cloud Firestore mogą mają nieprawidłowy stan uwierzytelniania.
Gdy używasz funkcji
firebase-crashlytics-ndk
jako zależności funkcji dynamicznej musisz ustawić właściwośćunstrippedNativeLibsDir
w tagubuild.gradle
zgodnie z opisem w Dokumentacja Crashytics NDK.
Więcej informacji o modułach funkcji i Play Feature Delivery znajdziesz na Omówienie Play Feature Delivery
Porównanie wtyczki do obsługi Gradle usług Google a Usługi Google Play i Sklepu Google Play
Kilka elementów ekosystemu Google, Firebase i Androida ma podobne konwencji nazewnictwa. Poniżej przedstawiamy krótkie wyjaśnienie każdej z nich:
- Wtyczka do Gradle usług Google
- wtyczka do Gradle (
com.google.gms.google-services
), która działa w czasie kompilacji, sprawdź, czy Twoja aplikacja ma właściwy dostęp do Firebase i Google, Interfejsy API - Pomimo swojej nazwy ta wtyczka nie ma związku z Usługami Google Play (patrz następnego kroku) i nie ma wpływu na funkcje aplikacji w czasie działania. .
- Ta wtyczka przetwarza też plik
google-services.json
dodany do Twoją aplikację podczas konfiguracji Firebase. Dowiedz się więcej o Wtyczka Gradle usług Google - Usługi Google Play
- Niewidoczna usługa w tle, która działa na urządzeniu z Androidem i oferuje kilku popularnych interfejsów API Google (takich jak Mapy Google i Logowanie przez Google) w aplikacjach urządzenie
- Scentralizowanie tych wspólnych interfejsów API w 1 usłudze zmniejsza rozmiar innych aplikacji i pozwala urządzeniu otrzymywać automatyczne aktualizacje zabezpieczeń ulepszeń funkcji bez aktualizacji systemu operacyjnego. Więcej informacji o Usługi Google Play.
- Sklep Google Play
- Sklep, w którym można pobierać aplikacje, filmy, książki i inne treści na urządzenie z Androidem
- Jako deweloper zarządzasz rozpowszechnianiem, wersjami itd. aplikacji przez w Konsoli Google Play. Jeśli na urządzeniu jest Sklep Google Play, uruchomionych Usług Google Play (patrz poprzedni wpis). Dowiedz się więcej o Sklep Google Play dla deweloperów.
- Google Play Games services
- Zestaw interfejsów API dla deweloperów gier mobilnych
- Więcej informacji: Usługi Gier Google Play i dowiedz się, zintegrować Firebase z projektem w usługach gier Google Play.
Zasoby open source dotyczące pakietów SDK Firebase na Androida
Firebase wspiera programowanie open source swoje treści i opinie.
Pakiety SDK Firebase na Androida
Większość pakietów SDK Firebase na Androida jest opracowywanych jako biblioteki open source dostępne publicznie repozytorium Firebase na GitHubie. Pracujemy nad przeniesieniem pozostałej, prywatnej wersji Firebase do naszego publicznego serwisu GitHub.
Krótkie wprowadzenie – przykłady
Firebase przechowuje zbiór przykładowych krótkich startów dla większości interfejsów API Firebase na urządzeniu z Androidem. Te krótkie wprowadzenia są dostępne publicznie Repozytorium krótkiego wprowadzenia Firebase na GitHubie.
Każde krótkie wprowadzenie możesz otworzyć jako projekt Android Studio, a potem uruchomić je w na urządzeniu mobilnym lub urządzeniu wirtualnym (AVD). Możesz też użyć tych krótkich wprowadzeń jako przykładowy kod do używania pakietów SDK Firebase.
Inne interesujące tematy
- Zależności pakietów SDK Firebase na Androida w Usługach Google Play
- Łączenie aplikacji Firebase z Google Play
- Integracja z projektem w usługach gier Play