Na tej stronie dowiesz się, jak zacząć korzystać z Firebase Phone Number Verification w aplikacji na Androida. Ogólny opis tej funkcji znajdziesz w omówieniu.
Wykonując czynności opisane na tej stronie, możesz szybko zacząć wdrażać ścieżki użytkownika weryfikacji numeru telefonu w Firebase PNV. Na potrzeby testowania wygenerujesz token tylko do testów, który będzie wskazywał fałszywy numer telefonu. Za pomocą tego tokena testowego, możesz zacząć dodawać Firebase PNV do swojej aplikacji bez konta rozliczeniowego ani urządzenia z prawdziwą kartą SIM.
Gdy będziesz zadowolony z wrażeń użytkownika Firebase PNV w swojej aplikacji, możesz wykonać dodatkowe czynności, aby przygotować aplikację do wdrożenia.
Zanim zaczniesz
Dodaj Firebase do projektu aplikacji na Androida, jeśli jeszcze tego nie zrobisz.
Aby korzystać z trybu testowego, urządzenie, na którym działa Twoja aplikacja, musi być zarejestrowane w publicznym programie beta usług systemowych Google. Aby dowiedzieć się, jak się zarejestrować, otwórz linkowaną stronę.
1. Dodaj bibliotekę Firebase PNV do swojej aplikacji
W pliku Gradle modułu (na poziomie aplikacji) (zwykle<project>/<app-module>/build.gradle.kts lub
<project>/<app-module>/build.gradle),
dodaj zależność od biblioteki Firebase Phone Number Verification na Androida. Do kontrolowania obsługi wersji biblioteki zalecamy używanie
Firebase Android BoM.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.13.0")) // Add the dependencies for the Firebase Phone Number Verification libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-pnv") }
Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.
(Alternatywnie) Dodaj zależności biblioteki Firebase bez używania BoM
Jeśli nie chcesz używać Firebase BoM, musisz określić wersję każdej biblioteki Firebase w wierszu zależności.
Pamiętaj, że jeśli w aplikacji używasz kilku bibliotek Firebase, zdecydowanie zalecamy używanie BoM do zarządzania wersjami bibliotek, co zapewnia zgodność wszystkich wersji.
dependencies { // Add the dependencies for the Firebase Phone Number Verification libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-pnv:16.1.0") }
2. Zainicjuj bibliotekę Firebase PNV w trybie testowym
W konsoli Firebase otwórz kartę Zabezpieczenia > Weryfikacja telefoniczna > Testowanie.
Kliknij Generate token (Wygeneruj token).
Google CloudW aplikacji zainicjuj klienta Firebase PNV, aby używać sesji testowej:
Kotlin
Zaimportuj bibliotekę:
import com.google.firebase.pnv.FirebasePhoneNumberVerification ``` Create a new instance of the `FirebasePhoneNumberVerification` class and use this instance for all Firebase PNV calls. ```kotlin val fpnv = FirebasePhoneNumberVerification.getInstance() ``` Enable a test session using the token you generated in the previous step: ```kotlin fpnv.enableTestSession("COPIED_TOKEN_STRING") ``` You must call this method only once on an instance of `FirebasePhoneNumberVerification`; subsequent calls will throw an error.
Tokeny testowe mają okres ważności wynoszący 7 dni. Po tym czasie musisz wygenerować nowy token, aby włączyć sesje testowe. Tokeny testowe działają na urządzeniach fizycznych i emulatorach, dzięki czemu idealnie nadają się do prototypowania interfejsu użytkownika w aplikacji lub testowania w CI/CD.
3. Zalecane: sprawdź, czy obsługa Firebase PNV jest dostępna
Aby pomóc Ci określić, kiedy wyświetlać interfejs wprowadzania numeru lub interfejs wyjaśniający, po uruchomieniu aplikacji zalecamy sprawdzenie, czy urządzenie i karta SIM obsługują Firebase PNV. Jest to wstępne sprawdzenie, które nie wymaga zgody użytkownika. Wynik tego testu możesz wykorzystać do podjęcia decyzji, czy rozpocząć proces weryfikacji numeru telefonu w Firebase, czy użyć alternatywnej metody weryfikacji numeru telefonu, np. SMS-a.Firebase PNV
Aby sprawdzić zgodność urządzenia, wywołaj metodę getVerificationSupportInfo(). Gdy sesja testowa jest aktywna, ta metoda zwróci listę zawierającą 1 wpis dla tokena testowego aktywnego w Twoim projekcie.
Później, gdy przygotujesz aplikację do wdrożenia, ta metoda zwróci wynik dla każdej karty SIM w urządzeniu.
Kotlin
// Check all SIMs for support.
fpnv.getVerificationSupportInfo()
.addOnSuccessListener { results ->
if (results.any { it.isSupported() }) {
// At least one SIM is supported; okay to call getVerifiedPhoneNumber
// (see the next step).
} else {
// No SIMs are supported, so fall back to SMS verification.
}
}
.addOnFailureListener { e ->
// Handle error.
}
4. Rozpocznij proces weryfikacji
Aby rozpocząć proces Firebase PNV wywołaj metodę getVerifiedPhoneNumber():
Kotlin
fpnv.getVerifiedPhoneNumber(this@MainActivity)
.addOnSuccessListener { result ->
// In test mode, this phone number will have a valid country code,
// followed by all zeros.
val phoneNumber = result.getPhoneNumber()
val token = result.getToken()
// Verification successful. Send token to your backend. (See Next Steps.)
}
.addOnFailureListener { e ->
// Handle failures, such as the user declining consent or a network error.
}
Metoda getVerifiedPhoneNumber() przeprowadza cały proces weryfikacji numeru telefonu, w tym:
- uzyskanie zgody użytkownika na udostępnienie numeru telefonu za pomocą Menedżera danych logowania na Androida;
- wysłanie żądania do backendu Firebase PNV;
- zwrócenie tokena zawierającego zweryfikowany numer telefonu urządzenia (w aplikacji produkcyjnej w tym momencie następuje rozliczenie).
Dalsze kroki
Na tej stronie dowiesz się, jak zintegrować się z Firebase PNV za pomocą ujednoliconego, interfejsu API z jednym wywołaniem. Wywołanie jednej metody obsługuje cały proces Firebase PNV użytkownika, od uzyskania zgody użytkownika po wykonanie niezbędnych wywołań sieciowych do backendu Firebase PNV. Dzięki tej metodzie ograniczasz liczbę kroków integracji do jednego wywołania metody.
Ten interfejs API jest zalecany większości deweloperów. Jeśli jednak masz konkretne wymagania, których biblioteka nie spełnia, informacje o implementowaniu niestandardowego procesu znajdziesz na stronie DostosowywanieFirebase Phone Number Verification procesu.
Jeśli używasz zweryfikowanego numeru telefonu poza klientem aplikacji, zamiast samego numeru telefonu przekaż token, aby móc sprawdzić jego integralność. Zobacz Weryfikowanie Firebase PNV tokenów.
Gdy zaimplementujesz i przetestujesz proces Firebase PNV w aplikacji oraz integrację z backendem , możesz wdrożyć aplikację, aby zacząć otrzymywać prawdziwe zweryfikowane numery telefonów. Zobacz Uaktualnianie do trybu produkcyjnego.