Uwierzytelnianie za pomocą linku w e-mailu wcześniej opierało się na usłudze Firebase Dynamic Links, która zostanie wyłączona 25 sierpnia 2025 r. Opublikowaliśmy alternatywne rozwiązanie w pakiecie Android SDK w wersji Firebase Authentication 23.2.0 lub nowszej oraz w wersji Firebase BoM 33.9.0 lub nowszej. Jeśli Twoja aplikacja używa linków w starym stylu i chcesz użyć alternatywnej metody migracji aplikacji, zapoznaj się z artykułem Authenticate with Firebase using Email Link in Android (Uwierzytelnianie w Firebase za pomocą linku e-mail na Androidzie), aby używać nowego systemu opartego na Firebase Hosting.
Jeśli do zarządzania przepływami OAuth w Firebase Authentication używasz pakietu Android SDK Firebase Authentication w wersji starszej niż 20.0.0 (lub Firebase BoM w wersji starszej niż 26.0.0), musisz zaktualizować pakiet SDK Authentication lub BoM do najnowszej wersji (Authentication w wersji 20.0.0 lub nowszej albo BoM w wersji 26.0.0 lub nowszej), aby nadal zarządzać przepływami OAuth w Firebase Authentication.
Przenoszenie powiązanej domeny Firebase Dynamic Links do domeny Firebase Hosting
Od teraz zamiast domeny Firebase Dynamic Links usługa Firebase Authentication będzie używać domyślnej domeny Firebase Hosting Twojego projektu do tworzenia linków do e-maili i innych działań związanych z linkami poza pasmem w aplikacjach mobilnych. Oznacza to, że musisz też zaktualizować aplikację, aby używała tej domeny domyślnej jako domeny powiązanej na potrzeby linków uwierzytelniania poczty e-mail do aplikacji mobilnej.
Aby zaktualizować linki do aplikacji mobilnych i używać nowej, automatycznie udostępnionej domeny domyślnej Firebase Hosting, postępuj zgodnie z instrukcjami podanymi w artykule Uwierzytelnianie w Firebase za pomocą linku e-mail na Androidzie.
Postępuj zgodnie z poniższymi instrukcjami, aby obsługiwać linki z nowej domeny i poinstruować Firebase Authentication, aby od tej pory używał nowej domeny do generowania linków do aplikacji mobilnych.
Jeśli chcesz nadal używać dowolnej z niestandardowych domen Firebase Hosting lub nawet niestandardowej domeny Firebase Dynamic Links jako nowej powiązanej domeny, wykonaj czynności odpowiadające domenie, której chcesz używać. Pamiętaj, że po wykonaniu instrukcji z następnej sekcji funkcja precyzyjnych linków w Twojej własnej domenie Firebase Dynamic Links zostanie usunięta. Pozostanie tylko sama domena do tworzenia linków do e-maili.
Skonfiguruj aplikację na Androida, aby obsługiwała link Firebase Hosting
- Aby obsługiwać te linki z aplikacji na Androida, musisz podać nazwę pakietu aplikacji w ustawieniach projektu w konsoli Firebase. Dodatkowo należy podać SHA-1 i SHA-256 certyfikatu aplikacji.
Jeśli chcesz, aby te linki Firebase Hosting przekierowywały do konkretnej aktywności, musisz skonfigurować filtr intencji w pliku
AndroidManifest.xml. Filtr intencji powinien przechwytywać linki Firebase Hosting Twojej domeny. WAndroidManifest.xml:<intent-filter android:autoVerify="true"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.BROWSABLE" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="https" android:host="PROJECT_ID.firebaseapp.com or a custom hosting domain" android:pathPrefix="/__/auth/links" /> </intent-filter>
Gdy użytkownicy otworzą link hostingu ze ścieżką „/__/auth/links” oraz określonym przez Ciebie schematem i hostem, aplikacja rozpocznie działanie z tym filtrem intencji, aby obsłużyć link.
Konfigurowanie projektu pod kątem używania nowych linków
Gdy będziesz gotowy(-a) do obsługi nowych linków do domeny, możesz użyć pakietu Firebase Admin SDK, aby zaktualizować sposób generowania linków do e-maili i poinstruować nasz backend, aby zaczął generować linki przy użyciu nowej domeny Firebase Hosting.
import { getAuth } from 'firebase-admin/auth'; const updateEmailAuthDomain = async () => { const updateRequest = { mobileLinksConfig: { domain: 'HOSTING_DOMAIN', }, }; const projectConfigManager = getAuth().projectConfigManager(); try { const response = await projectConfigManager.updateProjectConfig(updateRequest); // Updated project config console.log('Project configuration updated successfully:', response); } catch (error) { console.error('Error updating the project:', error); } };Wysyłanie i wykorzystywanie linku w e-mailu
Wyślij link logowania e-mailem tak jak wcześniej. Gdy użytkownik kliknie link, zostanie przekierowany do aplikacji (jeśli jest zainstalowana), aby dokończyć logowanie.
Dostosowywanie linków mobilnych
Możesz użyć domeny niestandardowej Firebase Hosting lub ponownie użyć domeny niestandardowej Firebase Dynamic Links jako nowej domeny linków mobilnych.
Używanie własnej domeny Firebase Hosting
- Aby skonfigurować własną domenę, postępuj zgodnie z instrukcjami Firebase Hosting.
- Skonfiguruj aplikację na Androida, aby obsługiwała link Firebase Hosting. (instrukcje znajdziesz w poprzedniej sekcji).
- Wyślij link uwierzytelniający na adres e-mail użytkownika ze zaktualizowanym obiektem
ActionCodeSettingsz własną domeną jakolinkDomain.
Ponowne użycie własnej domeny Firebase Dynamic Links
- Możesz ponownie użyć dowolnej domeny Firebase Dynamic Links jako domeny niestandardowej. Jednak funkcje Firebase Dynamic Links nie będą już obsługiwane (na przykład użytkownicy nie będą mogli zostać przekierowani do sklepu z aplikacjami, jeśli aplikacja nie jest zainstalowana na ich urządzeniu).
- Skonfiguruj aplikację na Androida, aby obsługiwała link Firebase Hosting (instrukcje znajdziesz w poprzedniej sekcji).
- Wyślij link uwierzytelniający na adres e-mail użytkownika ze zaktualizowanym obiektem
ActionCodeSettingsz własną domeną jakolinkDomain.