Игровые сервисы не работают для приложения, если оно загружено из игрового магазина

Я так долго пытался заставить игровые сервисы работать должным образом. Моя проблема в том, что игровой сервис не работает в версии, загруженной из игрового магазина, но в версии, загруженной непосредственно из студии Android, игровой сервис работает отлично. Несмотря на то, что обе версии используют один и тот же ключ и имеют одинаковый код SHA1 (код выпуска SHA1). Я проверил, совпадает ли SHA1 из версии моего приложения из игрового магазина с SHA1 игрового сервиса, сравнив коды SHA1 из android-release.apk и из https://console.developers.google.com/apis/credentials/oauthclient. Я сомневаюсь, что проблема заключается в коде моего приложения, потому что оно отлично работает в версии, загруженной непосредственно из студии Android.

Поэтому мой вопрос в том, что я мог сделать неправильно здесь, и как это исправить.

Спасибо за чтение


comment
надеюсь, это поможет, это решило мою проблему. проверьте: - заголовок stackoverflow.com/questions/44153675/   -  person 9paradox    schedule 29.05.2017


Ответы (3)


Прежде всего, я хочу поблагодарить всех, кто нашел время, чтобы опубликовать ответ. Я не думаю, что кто-то мог догадаться о моей глупой ошибке, потому что она применима только к пользователям libGDX. Проблема заключалась в том, что целевой SDK в файле Gradle .build BaseGameUtils не совпадал с файлом .build модуля Android. Удивительно, как такая маленькая ошибка может стоить вам целых выходных!

person A. Person    schedule 07.06.2017

При использовании Google Play Services SDK проверьте и убедитесь, что ваше устройство также совместимо и работает под управлением Android версии 4.0 или выше и включает Google Play Store.

Дополнительные сведения см. в этой документации. И эта статья, в которой обсуждалось сопоставление сервисов Google Play с ваша версия ОС Android также может помочь

person Teyam    schedule 23.05.2017
comment
У меня обычный галакси с4 с ОС Андроид 5.1 и на нем, конечно же, есть магазин гугл плей. Я сомневаюсь, что проблема в этом, у других людей на других устройствах игровой сервис также не работает для моей игры. - person A. Person; 23.05.2017

У меня такая же проблема:

Вам нужно использовать это:

keytool -exportcert -keystore path-to-debug-or-production-keystore -list -v

пример:

keytool -exportcert -keystore D:\Hristijan\Aplikacii\Keystore\blabla.jks -list -v

Это ПУТЬ, где вы создали хранилище ключей при создании APK-ФАЙЛА.

Проблема заключалась в том, что мы использовали ключ SHA1 для отладки в идентификаторах клиентов OAuth 2.0, и, насколько я понял, SHA1 для отладки и выпуска отличается.

Итак, после того, как вы получите SHA1 для выпуска, вы переходите на облачную платформу Google и в Credentials меняете свой SHA1 для своего приложения.

person Hristijan    schedule 23.05.2017
comment
Это кажется вполне разумным ответом. Зачем минусовать? - person JoeHz; 23.05.2017
comment
Я не был тем, кто проголосовал против, у меня даже недостаточно репутации, чтобы сделать это... - person A. Person; 23.05.2017