Вход через Google

Google Sign-In позволяет войти в приложение аккаунтом Google.

инфо
Что нужно заранее

Включение провайдера в Firebase

Откройте Firebase Console, нажмите Authentication и включите провайдера Google:

Экран входа и действие

Страница входа

Нужна страница с кнопкой входа — своя или из шаблонов страниц.

Действие входа

  1. Выберите кнопку входа, в панели свойств справа откройте Actions и нажмите Add Action.
  2. Найдите и выберите Log In (раздел Backend/Database > Firebase Authentication).
  3. В Auth Provider укажите Google.
  4. Включите Create User Document и в Collection выберите users. После входа в коллекцию попадут почта, имя и фото пользователя. Если запись уже есть, повторно она не создаётся.

Коллекции «users» ещё нет? См. как её создать.

совет

Выход из аккаунта — действие Logout.

Проверка входа

На устройстве

Во время разработки приложение удобно запускать локально через Local Run — см. документацию по Local Run и подключение физического устройства.

В Test mode и Run mode

  1. Домен, с которого идёт запрос, нужно внести в список разрешённых — и в консоли Firebase, и в консоли Google Cloud.

    • Для Test mode домен видно в консоли браузера при попытке входа. Выглядит он примерно так: ff-debug-service-frontend-ygxkweukma-uc.a.run.app. У тарифа Pro в адресе будет ещё -pro: ff-debug-service-frontend-pro-ygxkweukma-uc.a.run.app.
    • Для Run mode домен один — app.flutterflow.io.
  2. В консоли Firebase:

    1. Откройте Authentication и перейдите на вкладку Settings.
    2. Выберите Authorized domains в меню слева.
    3. Нажмите Add domain.
  3. В консоли Google Cloud:

    1. Откройте страницу учётных данных проекта.

    2. Проверьте, что выбран нужный проект.

      Страница учётных данных Google Cloud

    3. В блоке OAuth 2.0 Client IDs выберите Web client (auto created by Google Service).

    4. В Authorized JavaScript origins нажмите ADD URI и добавьте оба адреса.

    5. В Authorized redirect URIs добавьте те же адреса, приписав в конце /__/auth/handler.

  1. Если Web client ещё не создан, нажмите + CREATE CREDENTIALS, выберите OAuth client ID и укажите тип приложения Web application.

Проверка в консоли Firebase

Что вход работает и пользователи создаются, видно в Firebase project > Authentication > Users.

Список пользователей после входа через Google

инфо

Чтобы вход через Google работал в релизной сборке для Android, используйте ключи SHA из Play Console — см. ключи для релиза.

перевод официальной документации FlutterFlow

обновлено

ESC