Bezdepbonusu7Программирование: статьи и ответы

Реализуйте вход с помощью Google в приложении SwiftUI

Архив Bezdepbonusu72 мин чтения

Использование UIViewRepresentable для отображения кнопок входа в социальные сети и интерфейса

Всем привет,

В этой статье я расскажу, как реализовать "Вход с помощью Google" (или другой вход в социальную сеть) в проекте SwiftUI.

На данный момент кнопка и поток входа в социальную сеть доступны только для реализации с использованием контроллера представления в UIKit. Следовательно, мы создадим для них представления SwiftUI, используя UIViewRepresentable, чтобы реализовать функциональность в нашем проекте.

Мы специально реализуем вход с помощью Google, однако концепция остается той же для реализации и других поставщиков (например, вход с помощью GitHub).

Ладно, пошагово -

1. Установите необходимые зависимости и настройте проект.

Посетите официальный веб-сайт документации Google и выполните начальные шаги по настройке проекта для использования Google Auth.



Начните интегрировать Google Sign-In в свое приложение iOS
Прежде чем вы сможете начать интеграцию своего приложения iOS с компонентами Google Sign-In, вы должны загрузить зависимости... developers.google.com



2. Добавьте код AppDelegate как есть из документации.

Посетите эту страницу и добавьте код AppDelegate как есть.



Интеграция входа через Google в ваше приложение для iOS | Google Sign-In для iOS
Google Sign-In управляет потоком OAuth 2.0 и жизненным циклом токена, упрощая интеграцию с API Google. Загрузить... developers.google.com



3. Оберните кнопку входа и последовательность действий для SwiftUI.

Приведенная выше страница документации (которую мы использовали на шаге 2) содержит все шаги (четыре шага), необходимые от начала до конца. Из них мы уже выполнили первые два шага (до "Включить вход").

Шаги 3 и 4 ("Добавить кнопку входа" и "Выйти пользователя") в документации предназначены для контроллеров представлений. Мы рассмотрим оба из них здесь, заключив их в представления SwiftUI с помощью UIViewRepresentable.

Структура GoogleSignInButton - это представление для кнопки (специально для Google, для кнопки другого поставщика потребуется новое представление).

Структура SocialLogin - это представление, которое отвечает за пользовательский интерфейс потока провайдера входа в социальную сеть. Это общее представление, которое может инкапсулировать пользовательские интерфейсы для всех различных поставщиков.

В настоящее время у нас есть метод попыткиLoginGoogle, который вызывает процесс входа в Google. Точно так же у нас может быть метод tryLoginGitHub, который может вызывать поток входа GitHub.

4. Использование в приложении SwiftUI.

Все настройки завершены, и теперь мы можем просто использовать кнопку входа и получить поток пользовательского интерфейса провайдера следующим образом:

Готово, готово!

Спасибо за чтение!

Не стесняйтесь обращаться ко мне и общаться, проверять наши проекты или присоединяться к нашему сообществу с открытым исходным кодом:
LinkedIn, GitHub, Mentorship iOS, AnitaB.org Community

iOSSwiftuiProgramming

Похожие материалы

Статья из архива сайта: перевод и редактура материала сообщества разработчиков. Версии библиотек и инструментов могли измениться, сверяйтесь с официальной документацией.