Я опубликовал приложение в 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, но аутентификация, похоже, не работает. И, конечно, я не могу показать таблицу лидеров.
Я нашел много веток на различных форумах по этой проблеме, но ни один из ответов не помог мне.
Я, должно быть, что-то упускаю ...
Дополнительный вопрос: можно ли войти в Google Play Games в режиме игры Unity или мне нужно каждый раз запускать его на своем мобильном телефоне?
Попробуйте поместить apk в play store и загрузить его оттуда вместо использования "build and run"
Сначала я думал, что уже сделал это ... Но сегодня я попробовал еще раз, и это сработало. Большое спасибо !
Для аутентификации на 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");
}
});
}
Спасибо за ответ, но у меня уже есть эти строки кода инициализации в моей программе ... Но это не работает :(
Теперь он работает (почти) правильно. Казалось, что решение загружает приложение из Google Store, а не "создает и запускает" его ... Я думал, что делал это раньше, но сегодня это сработало ...
Теперь это Social.ReportScore (lScore, "Cgklwq6hv_sUEAIQAA", (bool success) ...)
это не работает. И все же успех заканчивается словом «правда», но моя таблица лидеров остается пустой ...
Да, вы должны запустить его на своем мобильном телефоне.