Плагин Unity для Google Play Games - вход / аутентификация не работает - PullRequest
0 голосов
/ 20 февраля 2019

Я попробовал все, и я застрял с этой проблемой в течение нескольких дней.Что бы я ни пытался, экран входа из Google Play открывается в приложении, но затем внезапно останавливается, и пользователь не входит в систему.

Перед тем, как поделиться кодом, я подведу итоги того, что я сделал:

  • Импортированный плагин GPG для Unity, последняя версия, также пробовал более старые версии, но тот же результат.Я выполнил настройку, попробовал принудительное разрешение на jar resolver.
  • Создана сборка, подписанная с хранилищем ключей
  • Загружен подписанный APK на внутренний тестовый трек
  • Ссылка GPG в playstore isправильно настроить
  • Попытка установки приложения вручную и через playstore
  • Создан новый проект для проверки только части входа в GPG, код, которым я поделюсь, будет для этого тестового проекта
  • Попробовал изменить ключи SHA1 в консоли API, перепробовал все возможные комбинации установки APK (Playstore / manual) и ключа SHA1 (Signed, Upload)
  • Добавил тестовые письма в тестовый трек себя и моегоколлега, и включил проверку этих писем.

Я надеюсь, что кто-то может мне помочь.Я больше ничего не могу найти в интернете и, похоже, сам не могу этого понять.Это единственное, что мешает нам опубликовать нашу первую игру.

Это весь код, который я использую для тестового приложения.Я добавил кнопку в сцену для входа в GPG и 1 текстовое поле для отображения строки состояния.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using GooglePlayGames.BasicApi.SavedGame;
using UnityEngine.UI;

public class ClickManagerScript : MonoBehaviour
{

    public GameObject textField;

    public void LogInClick()
    {
        PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder()
            .EnableSavedGames().Build();
        PlayGamesPlatform.DebugLogEnabled = true;
        PlayGamesPlatform.InitializeInstance(config);
        PlayGamesPlatform.Activate();

        SignIn();
    }

    void SignIn()
    {
        //when authentication process is done (successfuly or not), we load cloud data
        Debug.Log("Going to log in to GPG");
        Social.localUser.Authenticate(success => { UpdateTextField(); });
    }

    void UpdateTextField()
    {
        Text text = textField.GetComponent<Text>();

        if (Social.localUser.authenticated)
        {
            text.text = "Sign in succesfull";
        }
        else
        {
            text.text = "Sign in failed";
        }
    }
}

Ответы [ 2 ]

0 голосов
/ 24 февраля 2019

Для людей, видящих этот пост и имеющих одинаковую проблему: отключите сохраненные игры в своем коде, и вход будет работать.Облачное сохранение сейчас прервано.Самые последние комментарии по ссылке ниже касаются этой проблемы.Надеюсь, Google исправит это в ближайшее время, облачное сохранение довольно удобно для сохранения покупок IAP и т. Д.

https://github.com/playgameservices/play-games-plugin-for-unity/issues/2429

0 голосов
/ 21 февраля 2019

Я буду следить за этим.У меня те же проблемы, и я выполняю те же действия, что и вы.Глядя на код, он тоже очень похож.

...