Unity - не могу войти в Google Play Игры с моим приложением

Я опубликовал приложение в Google Play и сейчас хочу добавить к нему таблицу лидеров. Я следил за некоторыми руководствами по этому поводу (на GitHub), но все еще не могу войти в систему:

void SignIn()
{
    Social.localUser.Authenticate ((bool success) => 
        {
            if (success)
                GameObject.Find("UI_TXT_NAME").GetComponent<Text>().text = Social.localUser.userName;
            else
            {
                GameObject.Find("UI_TXT_NAME").GetComponent<Text>().text = "Inconnu";
                Debug.Log("Fail to authenticate");
            }
        });
}

Когда я создаю и запускаю свое приложение на своем телефоне Android, этот код всегда заканчивается оператором else {}. Тем не менее, после попытки входа в систему я вижу зеленую всплывающую рамку из Google Play Games, но аутентификация, похоже, не работает. И, конечно, я не могу показать таблицу лидеров.

Я нашел много веток на различных форумах по этой проблеме, но ни один из ответов не помог мне.

  • Я загрузил последние пакеты Android (вчера).
  • У меня нет ни ошибок, ни сообщений об ошибках.
  • Я зарегистрировал свое приложение и скопировал ресурсы в окно единства-> Google Play Games-> Настройка-> Настройка Android.
  • Я создал таблицу лидеров в Google Play.
  • Я разрешил своим двум адресам электронной почты тестировать свои приложения.

Я, должно быть, что-то упускаю ...

Дополнительный вопрос: можно ли войти в Google Play Games в режиме игры Unity или мне нужно каждый раз запускать его на своем мобильном телефоне?

Да, вы должны запустить его на своем мобильном телефоне.

PeakCoder 17.03.2018 14:36

Попробуйте поместить apk в play store и загрузить его оттуда вместо использования "build and run"

Chik3r 18.03.2018 15:43

Сначала я думал, что уже сделал это ... Но сегодня я попробовал еще раз, и это сработало. Большое спасибо !

Clém Grt 19.03.2018 21:06
0
3
1 125
3

Ответы 3

Для аутентификации на Android необходимо инициализировать Google Play Games (не обязательно для iOS). Код, необходимый для инициализации GPG (только для Android):

    PlayGamesClientConfiguration config = new 
    PlayGamesClientConfiguration.Builder()
        .Build();
    PlayGamesPlatform.InitializeInstance(config);
    PlayGamesPlatform.Activate();
    PlayGamesPlatform.DebugLogEnabled = true;

А затем войдите в систему (Android и iOS):

void SignIn()
{
    Social.localUser.Authenticate ((bool success) => 
        {
            if (success)
                GameObject.Find("UI_TXT_NAME").GetComponent<Text>().text = 
Social.localUser.userName;
            else
            {
                GameObject.Find("UI_TXT_NAME").GetComponent<Text>().text = "Inconnu";
                Debug.Log("Fail to authenticate");
            }
        });
}

Спасибо за ответ, но у меня уже есть эти строки кода инициализации в моей программе ... Но это не работает :(

Clém Grt 18.03.2018 14:53

Теперь он работает (почти) правильно. Казалось, что решение загружает приложение из Google Store, а не "создает и запускает" его ... Я думал, что делал это раньше, но сегодня это сработало ...

Теперь это Social.ReportScore (lScore, "Cgklwq6hv_sUEAIQAA", (bool success) ...)

это не работает. И все же успех заканчивается словом «правда», но моя таблица лидеров остается пустой ...

Другие вопросы по теме