Сервис игр Google Play в Unity не проходит аутентификацию - PullRequest
0 голосов
/ 03 апреля 2020

Служба GPG не работает

Показывает собственное окно GPG, но когда оно закрыто, обратный вызов PlayGamesPlatform.Instance.Authenticate() возвращает NetworkError

В игровой службе консоли Google Play: Создано ”.

  • В разделе« Сведения об игре »добавлено описание значков 512x512 и 1024x500.

  • В разделе« Связанные приложения » добавлено приложение android и завершена аутентификация (ключ OAuth 2.0 был создан автоматически)

  • В разделе «Достижения» создано достижение с описанием и значком 512x512.

  • В разделе «Тестирование» добавлена ​​учетная запись gmail для тестирования

  • В разделе «Публикация» нажал Publi sh.

В Google API:

  • Активирован Google Drive API и Google Play Android API разработчика (без создания каких-либо ключей)

  • Проверен SHA-1 в ключе OAuth для Android и в «Управление выпуском» ment ”>” App singing ”>” Сертификат подписи приложения ”

В Unity:

  • Загрузил последний выпуск с https://github.com/playgameservices/play-games-plugin-for-unity

  • В окне> Игры Google Play> Настройка> Настройка Android скопировали текст формата xml из раздела «Достижения» консоли Google Play с помощью Ссылка «Получить ресурсы», формат ClientID: 123456789123456-ffffffffffffffffffffffff.apps.googleusercontent.com

Тестовая сборка была подписана тем же ключом, что и приложение, размещенное в Google Play с тем же Название компании и название продукта

PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder()
.RequestIdToken()
.Build();

PlayGamesPlatform.DebugLogEnabled = true;
PlayGamesPlatform.InitializeInstance(config);
PlayGamesPlatform.Activate();

PlayGamesPlatform.Instance.Authenticate(SignInInteractivity.CanPromptAlways, ((SignInStatus status) =>
{
        if (status == SignInStatus.Success)
        {
            print( $"Welcome {PlayGamesPlatform.Instance.GetUserDisplayName()}\n");
        }
        else
        {
            print($"Fail:{status}");
        }
}));

При отладке в консоли Unty у меня есть

<i>AndroidPlayer(ADB@127.0.0.1:34999)</i> Returning an error code.
 #0 0x443df5a (libunity.so) GetStacktrace(int) 0x25
 #1 0x4e788b6 (libunity.so) DebugStringToFile(DebugStringToFileData const&) 0x169
 #2 0x49875fe (libunity.so) DebugLogHandler::Internal_Log(LogType, LogOption, core::basic_string<char, core::StringStorageDefault<char> >, Object*) 0x65
 #3 0x498754e (libunity.so) DebugLogHandler_CUSTOM_Internal_Log(LogType, LogOption, ScriptingBackendNativeStringPtrOpaque*, ScriptingBackendNativeObjectPtrOpaque*) 0xb5

1 Ответ

0 голосов
/ 22 апреля 2020

Я только что видел это. У меня была такая же ошибка. Что я сделал, чтобы это исправить, так это то, что я убрал разметку байт-кода в настройках проекта. Когда я проверил консоль разработчика Unity, я заметил ошибку, в которой говорится, что моей игре не удалось найти библиотеку для GooglePlayGames.

Хотя это не ответ IDEAL, это временное исправление. Идеальный ответ - создание файла Link. xml, который указывает компилятору не удалять файл .so файла. (Который я сейчас ищу, и как я наткнулся на ваш вопрос.)

...