Обзор миграции

В Google Play Games Services, в SDK games v1, используется вход через Google для Android, который устарел и будет удален из SDK аутентификации Google Play Services ( com.google.android.gms:play-services-auth ) в 2025 году. Новые игровые приложения могут использовать games v1 до 2025 года. Удаление входа через Google создает проблемы с зависимостями для существующих игровых приложений. Переход существующих игровых приложений с SDK games v1 на SDK games v2 решает проблемы с зависимостями, возникшие в результате удаления входа через Google.

Этот документ поможет вам понять взаимодействие игрового приложения с различными SDK. В документе также сравниваются возможности приложения с возможностями SDK игр Play Games Services v1 и v2.

Взаимодействие SDK

Диаграммы иллюстрируют взаимодействие между игровым приложением на Android, Google Mobile Services (GMS) Core, Play Games Services и сервером игр стороннего разработчика (3P). На них показано, как приложение использует сервисы Google для аутентификации и игровых функций, а также взаимодействует с отдельной системой стороннего разработчика.

игры v2 (текущая версия)

Взаимодействие между игровым приложением на Android, GMS Core, Play Games Services, и игровым сервером стороннего разработчика (3P).
Взаимодействие между игровым приложением на Android, GMS Core, Play Games Services и сторонним (3P) игровым сервером. (нажмите для увеличения).

игры версии 1 (устаревшая версия)

Взаимодействие между игровым приложением на Android, GMS Core, Play Games Services, и игровым сервером стороннего разработчика (3P).
Взаимодействие между игровым приложением на Android, GMS Core, Play Games Services и сторонним (3P) игровым сервером. (нажмите для увеличения).

Ниже приведён краткий обзор компонентов и SDK:

  • Игровое приложение.
    • Это означает, что игровое приложение пользователя работает на устройстве под управлением Android.
    • Он состоит из двух основных компонентов:
      • SDK для игр версии 1 или 2. Клиентский SDK, отвечающий за взаимодействие с сервисами Play Games.
      • SDK аутентификации. SDK аутентификации сервисов Google Play отвечает за обработку процессов аутентификации и авторизации пользователей в играх версии 1.
    • Оба SDK взаимодействуют с использованием AIDL (Android Interface Definition Language), что указывает на схему обмена данными между различными процессами или службами.
  • GMS Core также называется Google Play Services.
    • Это собственная разработка Google на платформе Android.
    • В игровом приложении используются два модуля GMS Core:
      • Игровой модуль предоставляет функции, специфичные для каждой игры, такие как таблицы лидеров, достижения и управление состоянием игры.
      • Модуль аутентификации. Обрабатывает операции аутентификации и авторизации пользователей.
    • SDK для игр и аутентификации в игровом приложении взаимодействуют с соответствующими модулями, используя интерфейсы AIDL , что указывает на межпроцессное взаимодействие (IPC).

  • Шлюз сервисов Play Games.
    • Логический шлюз, обеспечивающий связь между ядром GMS и сервером Play Games Services.
    • Обрабатывает API-запросы, выполняет преобразование данных и аутентификацию для взаимодействия с сервером.
  • Сервер Play Games Services.
    • Представляет собой серверные службы Play Games Services, отвечающие за хранение игровых данных, управление учетными записями пользователей и обеспечение работы многопользовательских функций.
  • Платформа для сторонних игр.
    • Если ваше игровое приложение относится к категории сторонних (3P) приложений, клиентская библиотека взаимодействует с серверами Play Games Services через серверы сторонних игр.
    • Это означает, что приложение также может проходить аутентификацию у другого поставщика услуг.
  • Сторонний игровой сервер.
    • Представляет собой необязательный внешний сервер, с которым может взаимодействовать игровое приложение, вероятно, для реализации пользовательских функций или управления данными.
    • Взаимодействие с приложением осуществляется через сторонний игровой шлюз.

Сравнение характеристик

В этой таблице представлено сравнение функций SDK игр версии 1 и версии 2:


Особенность

игры v1 SDK

игры v2 SDK

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

Требуется интеграция с play-services-auth .

Упрощенная и оптимизированная система; не требуется play-services-auth .

Авторизация

Дополнительный код для отображения успешных, неудачных и повторных попыток.

Управление осуществляется с помощью SDK.

Токен доступа к серверу

Можно запросить дополнительные области действия OAuth 2.0 с помощью GoogleSigninClient .

Дополнительный код для обработки ошибок во время аутентификации.

При запросе доступа к веб-API сервисов Play Games через GamesSignInClient можно запросить три основных области идентификации OAuth 2.0.

Для получения дополнительной информации см. разделы «Доступ к сервисам Play Games на стороне сервера» и «Получение кодов аутентификации сервера» .


Процесс входа в систему

Использует GoogleSigninClient .

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

Использует GamesSignInClient .

SDK обрабатывает шаблонный код, автоматическую аутентификацию и обработку ошибок.

Всплывающее окно приветствия

Требуется дополнительный код.
Разработчики могут контролировать его размещение и время появления.

Дополнительный код не требуется. Единый пользовательский интерфейс во всех играх, настроенных с помощью SDK для игр версии 2.

Зависимости

Требуется play-services-auth .

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

Использует GoogleSignInClient.signOut .

API для выхода из системы не поддерживается.

Учетные записи и настройки для каждой игры в рамках сервиса Multiple Play Games Services.

Управление учетной записью возможно прямо в игре.

Пользователи могут изменить профиль сервиса Play Games в настройках мобильного устройства. Для получения дополнительной информации см. раздел «Как переключать профили Play Games на мобильном устройстве» .