Ранее аутентификация по ссылкам электронной почты основывалась на 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 v20.0.0+ или BoM v26.0.0+), чтобы продолжить управление потоками OAuth в Firebase Authentication .
Перенесите связанный с Firebase Dynamic Links домен на домен Firebase Hosting .
В дальнейшем, вместо домена Firebase Dynamic Links , Firebase Authentication будет использовать домен Firebase Hosting по умолчанию для вашего проекта для создания ссылок на электронные письма и других действий, выполняемых вне основного потока, в мобильных приложениях. Это означает, что ваше приложение также необходимо будет обновить, чтобы использовать этот домен по умолчанию в качестве связанного домена для ссылок аутентификации по электронной почте в вашем мобильном приложении.
Вы можете следовать инструкциям в разделе «Аутентификация с помощью Firebase по электронной почте в Android» , чтобы обновить ссылки вашего мобильного приложения и использовать новый автоматически предоставляемый домен по умолчанию Firebase Hosting .
Следуйте приведенным ниже инструкциям, чтобы обрабатывать ссылки с нового домена и указать 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.