SDK для Unity / Аутентификация пользователя через социальные сети 
 На главную

SDK для Unity

  • Руководство по интеграции

  • Демопроект

  • Аутентификация

  • Каталог

  • Подписки

  • Акции

  • Покупка товара

  • Инвентарь игрока

  • Личный кабинет и атрибуты пользователя

  • Руководства по сборке приложений

  • Решение проблем


  • Аутентификация пользователя через социальные сети 

    Вы можете реализовать в вашем приложении аутентификацию пользователя с помощью его аккаунта в социальной сети. Если пользователь входит в систему впервые через аккаунт социальной сети, новая учетная запись создается автоматически. Пользователю не требуется вводить имя пользователя, email-адрес или другие данные.

    Возможны два способа реализации аутентификации через социальные сети:

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

    Социальные сети могут быть как основным способом аутентификации в вашем приложении, так и альтернативным.

    Если аккаунт социальной сети является альтернативным способом аутентификации, для автоматической привязки аккаунта к существующей учетной записи должны быть выполнены следующие условия:

    • Пользователь, зарегистрированный с помощью имени пользователя или email-адреса, входит в приложение через аккаунт социальной сети.
    • Социальная сеть возвращает email-адрес.
    • Email-адрес из социальной сети совпадает с email-адресом, указанным пользователем при регистрации в вашем приложении.

    Вы также можете реализовать ручную привязку аккаунта социальной сети.

    Инструкции

    Узнайте о дополнительных настройках из наших инструкций.

    Как настроить аутентификацию через социальные сети с помощью веб-сервисов

    Поддерживается авторизация через следующие социальные сети:

    • Amazon
    • Apple
    • Baidu
    • Battle.net
    • Discord
    • Facebook
    • GitHub
    • Google
    • Kakao
    • LinkedIn
    • MSN
    • Mail.ru
    • Microsoft
    • Naver
    • Odnoklassniki
    • PayPal
    • QQ
    • Reddit
    • Steam
    • Twitch.tv
    • Twitter
    • VK
    • Vimeo
    • WeChat
    • Weibo
    • Xbox Live
    • Yahoo
    • Yandex
    • YouTube

    Чтобы настроить аутентификацию через веб-сервисы:

    1. В интерфейсе приложения добавьте кнопки для аутентификации через социальные сети.
    2. Настройте социальные сети для выбранного варианта авторизации в Личном кабинете.
    3. Реализуйте логику аутентификации на стороне приложения.

    Настройка социальных сетей для варианта авторизации в Личном кабинете Иксоллы

    Внимание
    В Личном кабинете для варианта авторизации, который вы используете в своем приложении, должен быть выбран способ — Классическая авторизация или Авторизация через социальные сети. Вы можете изменить способ авторизации по ссылке Изменить метод авторизации. Ранее сохраненные настройки останутся без изменений.

    1. Откройте ваш проект в Личном кабинете.
    2. В боковом меню выберите пункт Авторизация.
    3. Нажмите Настроить в панели нужного варианта авторизации.
    4. На странице навигации перейдите к блоку Аутентификация и выберите раздел Авторизация через социальные сети.

    1. Подключите социальные сети, через которые пользователи смогут регистрироваться и входить в приложение. Это можно сделать одним из следующих способов:

      • Чтобы подключить нужную социальную сеть, нажмите значок ⚙ и выберите пункт Подключить.

      • Чтобы подключить сразу несколько социальных сетей, выберите нужные панели (рамки панелей станут зелеными). Затем в раскрывающемся меню Управление выберите пункт Подключить.

      • Чтобы подключить сразу все доступные социальные сети, нажмите Выбрать все. Затем в раскрывающемся меню Управление выберите пункт Подключить.

    Примечание
    По умолчанию при аутентификации используются ID и секретный ключ приложения Иксоллы. Если ваше приложение настроено в личном кабинете разработчика социального провайдера, вы можете указать собственные ID и секретный ключ приложения. Подробную инструкцию по получению ID и секретного ключа можно найти в настройках карточки социальной сети в Личном кабинете.

    Интеграция на стороне приложения

    Реализуйте следующую логику при нажатии кнопки аутентификации через социальную сеть:

    1. Получите URL-адрес страницы регистрации/авторизации с помощью метода SDK GetSocialNetworkAuthUrl.
    2. Откройте страницу регистрации/авторизации в браузере.

    Примечание
    Аутентификация через социальные сети недоступна с помощью внешнего браузера. В состав SDK включен встроенный браузер, разработанный Иксоллой. Вы можете использовать его или любой другой браузер, позволяющий отслеживать изменения URL-адресов.

    1. Отследите изменение URL-адреса страницы после успешной аутентификации пользователя.
    2. Получите код аутентификации из URL-адреса активной страницы. Для этого вы можете использовать вспомогательный метод SDK ​​ParseUtils.TryGetValueFromUrl().
    3. Обменяйте код аутентификации на токен с помощью метода SDK ExchangeCodeToToken.

    Справочная документация SDK
    Узнайте больше о методах SDK и их параметрах.
    Была ли статья полезна?
    Спасибо!
    Что может сделать страницу еще лучше? Сообщение
    Жаль, что так произошло
    Расскажите, почему статья не была полезна. Сообщение
    Спасибо за обратную связь!
    Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
    Скрыть

    Как настроить нативную авторизацию через социальные сети

    Нативная авторизация позволяет пользователям войти в ваше приложение с помощью аккаунта социальной сети, настроенного на мобильном устройстве.

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

    В настоящее время для SDK реализована нативная авторизация через следующие социальные сети:

    • Google
    • Facebook
    • WeChat
    • QQ

    Чтобы настроить нативную авторизацию:

    1. В интерфейсе приложения добавьте кнопки для аутентификации через социальные сети.
    2. Создайте сборку вашего проекта Unity под Android.
    3. Настройте приложение в личном кабинете разработчика социальной сети:
      1. Для авторизации через Facebook:
        1. Зарегистрируйтесь и создайте новое приложение.
        2. Настройте страницу приложения в личном кабинете разработчика Facebook.
      2. Для авторизации через Google настройте проект в Google API Console.
      3. Для авторизации через WeChat:
        1. Зарегистрируйтесь и создайте новое мобильное приложение.
        2. Отправьте приложение на проверку.
      4. Для авторизации через QQ:
        1. Зарегистрируйтесь и создайте новое мобильное приложение.
        2. Отправьте приложение на проверку.

    1. Настройте авторизацию через социальные сети на стороне Иксоллы:
      1. Для Facebook и Google настройте социальные сети в Личном кабинете.
      2. Для WeChat и QQ обратитесь к аккаунт-менеджеру проекта.
    2. Настройте ассет для вашего проекта Unity.
    3. Реализуйте логику аутентификации на стороне приложения.

    Создание сборки проекта Unity под Android

    1. Перейдите к вашему проекту Unity.
    2. В главном меню выберите пункт File > Build settings.
    3. В панели Platform выберите пункт Android.
    4. Нажмите Build.

    Для дальнейшей настройки нативной авторизации вам понадобятся:

    • Название пакета, которое можно найти в поле Package Name в панели Inspector после выбора платформы Android в File > Build settings.
    • Имя класса Android — название главной Activity с указанием неймспейса приложения (например, com.domain.appname.activity). Имя класса можно найти в AndroidManifest.xml. Тег главной Activity должен содержать тег intent-filter с действием android.intent.action.MAIN и категорией android.intent.category.LAUNCHER.
    • Хеш-ключ Android. Вы можете получить его с помощью OpenSSL.

    Настройка страницы приложения в личном кабинете разработчика Facebook

    1. Перейдите к настройкам приложения в личном кабинете разработчика Facebook.
    2. Перейдите Настройки > Основное.
    3. Нажмите Добавить платформу и выберите Android.
    4. В поле Название пакета Google Play укажите название пакета из вашего проекта Unity.
    5. В поле Название класса укажите имя класса Android из вашего проекта Unity.
    6. В поле Ключевые хеш-адреса укажите хеш-ключ Android из вашего проекта Unity.
    7. Нажмите Сохранить изменения.

    Для дальнейшей настройки нативной авторизации вам понадобятся Идентификатор приложения и Секрет приложения, которые можно найти в настройках приложения в разделе Настройки > Основное.

    Настройка проекта в Google API Console

    1. Перейдите в Google API Console.
    2. Нажмите Создать проект.
    3. Укажите Название проекта и Местоположение, нажмите Создать.
    4. Перейдите в созданный проект и в боковом меню нажмите Окно запроса доступа OAuth.
    5. Установите флажок Внешнее и нажмите Создать.
    6. Укажите необходимые параметры и нажмите Сохранить.
    7. В боковом меню выберите Учетные данные.
    8. Создайте клиент OAuth 2.0 для вашего приложения на Unity:

      1. Нажмите Создать учетные данные и выберите Идентификатор проекта OAuth.
      2. В поле Тип приложения укажите Android.
      3. Укажите Имя.
      4. В поле Название пакета укажите имя пакета из вашего проекта Unity.
      5. В поле Контрольная сумма сертификата SHA-1 укажите хеш-ключ Android из вашего проекта Unity.
      6. Нажмите Создать.
      7. Нажмите OK.

    1. Создайте клиент OAuth 2.0 для веб-приложения:
      1. Нажмите Создать учетные данные и выберите пункт Идентификатор проекта OAuth.
      2. В поле Тип приложения укажите Веб-приложение.
      3. Укажите Имя.
      4. Нажмите Добавить URI в разделе Разрешенные URI перенаправления и укажите URI https://login.xsolla.com/api/social/oauth2/callback.
      5. Нажмите Создать.
      6. Нажмите OK.

    Для дальнейшей настройки нативной авторизации вам понадобятся Идентификатор клиента и Секретный код клиента, которые можно найти в настройках идентификатора клиента для веб-приложения.

    Настройка социальных сетей для варианта авторизации в Личном кабинете Иксоллы

    Внимание
    В Личном кабинете для варианта авторизации, который вы используете в своем приложении, должен быть выбран способ — Классическая авторизация или Авторизация через социальные сети. Вы можете изменить способ авторизации по ссылке Изменить метод авторизации. Ранее сохраненные настройки останутся без изменений.

    1. Откройте ваш проект в Личном кабинете.
    2. В боковом меню выберите пункт Авторизация.
    3. Нажмите Настроить в панели нужного варианта авторизации.
    4. На странице навигации перейдите к блоку Аутентификация и выберите раздел Авторизация через социальные сети.

    1. Чтобы подключить социальную сеть, в карточке социальной сети нажмите значок ⚙ справа от названия и выберите пункт Подключить.

    Примечание
    Для использования авторизации через социальные сети в вашем проекте укажите ID и секретный ключ вашего приложения в настройках карточки социальной сети. ID и секретный ключ приложения находятся в аккаунте разработчика социального провайдера. Подробную инструкцию по получению ID и секретного ключа можно найти в настройках карточки социальной сети в Личном кабинете.

    Настройка ассета для проекта Unity

    1. Перейдите к вашему проекту Unity.
    2. В главном меню выберите пункт Window > Xsolla > Edit Settings.
    3. Укажите идентификатор приложения:
      1. В поле Facebook App ID укажите Идентификатор приложения из личного кабинета разработчика Facebook.
      2. В поле Google server ID укажите Идентификатор клиента из Google API Console для веб-приложения.
      3. В поле WeChat App ID укажите AppID из настроек приложения WeChat.
      4. В поле QQ App ID укажите AppID из настроек приложения QQ.

      Интеграция на стороне приложения

      Реализуйте следующую логику при нажатии кнопки аутентификации через социальную сеть:
      1. Вызовите метод SDK AuthWithSocialNetworkAccessToken и получите код аутентификации.
      2. Обменяйте код аутентификации на токен с помощью метода SDK ExchangeCodeToToken.
      Справочная документация SDK
      Узнайте больше о методах SDK и их параметрах.
      Была ли статья полезна?
      Спасибо!
      Что может сделать страницу еще лучше? Сообщение
      Жаль, что так произошло
      Расскажите, почему статья не была полезна. Сообщение
      Спасибо за обратную связь!
      Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
      Скрыть

    Полезные ссылки

    Последнее обновление: 14 ноября 2022

    Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.

    Сообщите о проблеме
    Мы постоянно улучшаем качество нашей документации. Ваш отзыв поможет нам в этом.
    Укажите email-адрес, чтобы мы могли связаться с вами
    Спасибо за обратную связь!