Ранее аутентификация по ссылке в электронном письме выполнялась с помощью Firebase Dynamic Links, поддержка которого будет прекращена 25 августа 2025 г. Мы опубликовали альтернативное решение в Firebase Authentication Android SDK версии 23.2.0 и выше и Firebase BoM версии 33.9.0 и выше. Если в вашем приложении используются ссылки старого стиля и вы хотите использовать альтернативный метод переноса приложения, ознакомьтесь со статьей Аутентификация в Firebase с помощью ссылки в электронном письме на Android, чтобы использовать новую систему на основе Firebase Hosting.
Кроме того, если вы используете Android SDK Firebase Authentication версии ниже 20.0.0 (или Firebase BoM версии ниже 26.0.0) для управления потоками OAuth с помощью Firebase Authentication, вам нужно будет обновить SDK Authentication или BoM до последней версии (Authentication 20.0.0+ или BoM 26.0.0+), чтобы продолжить управлять потоками OAuth в Firebase Authentication.
Как перенести связанный домен Firebase Dynamic Links в домен Firebase Hosting
В дальнейшем вместо домена Firebase Dynamic Links Firebase Authentication будет использовать домен по умолчанию Firebase Hosting для вашего проекта, чтобы создавать ссылки для ссылок в электронных письмах и других действий со ссылками вне диапазона в мобильных приложениях. Это означает, что вам также потребуется обновить приложение, чтобы использовать этот домен по умолчанию в качестве связанного домена для ссылок аутентификации по электронной почте в мобильном приложении.
Чтобы обновить ссылки в мобильном приложении и использовать новый автоматически предоставленный домен по умолчанию Firebase Hosting, следуйте инструкциям в статье Аутентификация в Firebase с помощью ссылки в электронном письме на Android.
Следуйте инструкциям ниже, чтобы обрабатывать ссылки из нового домена и указать Firebase Authentication, что для создания ссылок на мобильные приложения нужно использовать новый домен.
Если вы хотите продолжить использовать один из своих пользовательских доменов Firebase Hosting или даже пользовательский домен Firebase Dynamic Links в качестве нового связанного домена, выполните действия, соответствующие домену, который вы хотите использовать. Обратите внимание, что после выполнения инструкций из следующего раздела функция ссылок на контент в вашем пользовательском домене Firebase Dynamic Links будет удалена. Для создания ссылок в электронных письмах останется только сам домен.
Настройте приложение для Android для обработки ссылки Firebase Hosting
- Чтобы обрабатывать эти ссылки из приложения для Android, необходимо указать название пакета приложения в настройках проекта консоли Firebase. Кроме того, необходимо предоставить хеши SHA-1 и SHA-256 сертификата приложения.
Если вы хотите, чтобы эти ссылки Firebase Hosting перенаправляли на определенное действие, вам потребуется настроить фильтр интентов в файле
AndroidManifest.xml. Фильтр интентов должен перехватывать ссылки Firebase Hosting вашего домена. ВAndroidManifest.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>
Когда пользователи открывают ссылку на хостинг с путем "/__/auth/links", а также указанными вами схемой и хостом, ваше приложение запускает действие с этим фильтром интентов для обработки ссылки.
Настройте проект для использования новых ссылок
Когда вы будете готовы к работе с новыми ссылками, используйте Firebase Admin SDK, чтобы обновить способ создания ссылок в электронных письмах и указать, что серверная часть должна начать создавать ссылки с использованием нового домена 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); } };Как отправить и активировать ссылку из письма
Отправьте ссылку для входа по электронной почте, как и раньше. Когда конечный пользователь нажмет на ссылку, он будет перенаправлен в приложение, если оно установлено, чтобы завершить вход.
Как настроить ссылки на мобильные сайты
Вы можете использовать собственный домен Firebase Hosting или повторно использовать собственный домен Firebase Dynamic Links в качестве нового домена мобильных ссылок.
Использовать собственный домен Firebase Hosting
- Чтобы настроить пользовательский домен, следуйте руководству по Firebase Hosting.
- Настройте приложение для Android для обработки ссылки Firebase Hosting. (инструкции приведены в предыдущем разделе).
- Отправьте ссылку для аутентификации на адрес электронной почты пользователя с обновленным объектом
ActionCodeSettingsс пользовательским доменом в качествеlinkDomain.
Как повторно использовать собственный домен Firebase Dynamic Links
- Вы можете повторно использовать любой из доменов Firebase Dynamic Links в качестве пользовательского домена. Однако функции Firebase Dynamic Links больше не будут поддерживаться (например, пользователи не будут перенаправляться в магазин приложений, если приложение не установлено на их устройстве).
- Настройте приложение для Android для обработки ссылки Firebase Hosting (инструкции приведены в предыдущем разделе).
- Отправьте ссылку для аутентификации на адрес электронной почты пользователя с обновленным объектом
ActionCodeSettingsи пользовательским доменом в качествеlinkDomain.