Перенести вход по ссылке электронной почты из Firebase Dynamic Links (iOS)

Ранее аутентификация по ссылкам в электронной почте основывалась на Firebase Dynamic Links , который будет отключен 25 августа 2025 года . Мы опубликовали альтернативное решение в Firebase Authentication iOS SDK версии 11.8.0+. Если ваше приложение использует Firebase Dynamic Links , вам следует перевести его на новую систему на основе Firebase Hosting .

Перенесите связанный с Firebase Dynamic Links домен на домен Firebase Hosting .

В дальнейшем, вместо домена Firebase Dynamic Links , Firebase Authentication будет использовать домен Firebase Hosting по умолчанию для вашего проекта для создания ссылок на электронные письма и других действий, выполняемых вне основного потока, в мобильных приложениях. Это означает, что ваше приложение также необходимо будет обновить, чтобы использовать этот домен по умолчанию в качестве связанного домена для ссылок аутентификации по электронной почте в вашем мобильном приложении.

Вы можете следовать инструкциям в разделе «Аутентификация с помощью Firebase по электронной почте на платформах Apple» , чтобы обновить ваше приложение и использовать новый автоматически предоставляемый домен по умолчанию Firebase Hosting .

Следуйте приведенным ниже инструкциям, чтобы обрабатывать ссылки с нового домена и указать Firebase Authentication начать использовать домен Firebase Hosting для генерации ссылок на мобильные приложения в дальнейшем.

Если вы хотите продолжить использовать любой из своих пользовательских доменов Firebase Hosting или даже свой пользовательский домен Firebase Dynamic Links в качестве нового связанного домена, следуйте инструкциям в разделе «Настройка мобильных ссылок» и адаптируйте шаги в соответствии с желаемым доменом.

  1. Свяжите домен Firebase Hosting с доменом, связанным с вашим приложением.

    Вам потребуется настроить выбранный домен как ассоциированный домен для ссылок приложения. Чтобы настроить права доступа в вашем приложении, откройте вкладку «Подписание и возможности» целевого приложения в Xcode и добавьте домены Firebase Hosting из предыдущего шага в раздел «Ассоциированные домены». Если используется домен Firebase Hosting по умолчанию, это будет... applinks: PROJECT_ID .firebaseapp.com .

    Дополнительную информацию см. в разделе «Поддержка связанных доменов» на сайте документации Apple.

    В каждом из ваших доменов Firebase Hosting развернут связанный файл домена. Чтобы получить к нему доступ, перейдите по адресу PROJECT_ID .firebaseapp.com/.well-known/apple-app-site-association . Этот файл AASA можно перезаписать; см. раздел «Создание и размещение файлов конфигурации универсальных ссылок» для получения дополнительной информации.

  2. Настройте свой проект для использования новых ссылок.

    Когда вы будете готовы к работе с новыми доменными ссылками, вы можете использовать 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);
        }
    };
    
  3. Отправьте и активируйте ссылку из электронного письма.

    Отправьте ссылку для входа по электронной почте, как и раньше. Когда пользователь перейдет по ссылке, он будет перенаправлен в приложение (если оно установлено) для завершения входа.

Вы можете использовать собственный домен Firebase Hosting или повторно использовать свой собственный домен Firebase Dynamic Links в качестве домена для мобильных ссылок.

Используйте собственный домен Firebase Hosting

  1. Чтобы настроить собственный домен, следуйте инструкциям Firebase Hosting .
  2. Свяжите пользовательский домен с доменом, связанным с вашим приложением.
  3. Отправьте ссылку для аутентификации на электронный адрес пользователя, используя обновленный объект ActionCodeSettings с пользовательским доменом в качестве linkDomain .
  1. Вы можете повторно использовать любой из своих доменов Firebase Dynamic Links в качестве собственного домена. Однако функциональность Firebase Dynamic Links больше не будет поддерживаться (например, пользователи не смогут быть перенаправлены в магазин приложений, если приложение не установлено на их устройстве).
  2. Отправьте ссылку для аутентификации на электронный адрес пользователя, используя обновленный объект ActionCodeSettings с пользовательским доменом в качестве linkDomain .