使用 android 基本示例的排行榜登录失败并显示 com.google.android.gms.common.api.ApiException:4:
Leaderboard signin using android basic samples fails with com.google.android.gms.common.api.ApiException: 4:
我正在尝试在我使用 LibGDX 框架制作的 Android 游戏中实现 Google 玩游戏排行榜。
正在尝试在以下存储库中实施 google 提供的基本 android 示例
https://github.com/playgameservices/android-basic-samples
因为我对排行榜感兴趣,所以我对 TypeANumber 项目感兴趣。如本项目githubReadMe.md中提示的已完成所有设置:
所以,我做了以下工作:
- 设置google为我的项目玩游戏服务
- 为它创建链接的应用程序和排行榜
- 替换 res/ids 中的 ID。xml
- 更改我的 build.grade Type-A-Number 项目中的包名称
应用程序 ID
com.myGame.blah
- 编译并运行
在我实际登录的移动物理设备上执行 google 玩游戏,但执行时仍然如此。
我确实看到下面有一个带有消息的按钮
使用 Google 登录,与朋友分享您的分数和成就。
当点击这个按钮记录它时,它显示连接到应用程序,但过了一段时间我得到一个错误 4 的弹出窗口:
`04-01 17:59:15.604 27814-27814/? D/TanC: signInSilently(): failure
com.google.android.gms.common.api.ApiException: 4:
at com.google.android.gms.common.internal.zzb.zzy(Unknown Source)
at com.google.android.gms.common.internal.zzbk.zzz(Unknown Source)
at com.google.android.gms.common.internal.zzbl.zzr(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.zzc(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.setResult(Unknown Source)
at com.google.android.gms.auth.api.signin.internal.zzg.zza(Unknown Source)
at com.google.android.gms.auth.api.signin.internal.zzt.onTransact(Unknown Source)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method) 04-01 17:59:15.604 27814-27814/? D/TanC: onDisconnected()`
任何人都可以建议,我缺少什么以及问题是什么。搜索后,我了解到可能是我的 Oauth 2.0 客户端 ID 与应用程序不匹配,但后来我也匹配了。
提前致谢
我收到这个错误是因为当我们在 linked app 之后点击 Authorize app 时,它显示了在 play store 上传的 apk 的默认 SHA1,但这与我们上传的不同所以要创建它,我们需要使用 keytool 命令。理想情况下,我们应该添加调试 SHA1 证书以及使用我们用来生成发布 apk 的密钥库的 SHA1 证书。
以下是命令,其中 C:\Program Files\Java\jdk1.7.0_72\bin 是 Java 在您的电脑中安装的路径,D:\Java\libGdx\apk\keystore\android.jks是您的生产密钥库的路径
C:\Program Files\Java\jdk1.7.0_72\bin>keytool -list -keystore D:\Java\libGdx\apk\keystore\android.jks
输入密钥库密码:
密钥库类型:JKS
密钥库提供商:SUN
您的密钥库包含 1 个条目
briskybird,2017 年 12 月 9 日,PrivateKeyEntry,
证书指纹 (SHA1):27:XX:XX:XX:XX:B2:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:BD:BF
使用下面生成调试证书
C:\Program Files\Java\jdk1.7.0_72\bin>keytool -list -keystore C:\Users\USER.android\debug.keystore
C:\Users\.android\debug.keystore 是您 debug.keystore 的默认路径,默认情况下调试密钥库的密码是 android
我正在尝试在我使用 LibGDX 框架制作的 Android 游戏中实现 Google 玩游戏排行榜。
正在尝试在以下存储库中实施 google 提供的基本 android 示例
https://github.com/playgameservices/android-basic-samples
因为我对排行榜感兴趣,所以我对 TypeANumber 项目感兴趣。如本项目githubReadMe.md中提示的已完成所有设置:
所以,我做了以下工作:
- 设置google为我的项目玩游戏服务
- 为它创建链接的应用程序和排行榜
- 替换 res/ids 中的 ID。xml
- 更改我的 build.grade Type-A-Number 项目中的包名称
应用程序 ID
com.myGame.blah
- 编译并运行
在我实际登录的移动物理设备上执行 google 玩游戏,但执行时仍然如此。
我确实看到下面有一个带有消息的按钮 使用 Google 登录,与朋友分享您的分数和成就。
当点击这个按钮记录它时,它显示连接到应用程序,但过了一段时间我得到一个错误 4 的弹出窗口:
`04-01 17:59:15.604 27814-27814/? D/TanC: signInSilently(): failure
com.google.android.gms.common.api.ApiException: 4:
at com.google.android.gms.common.internal.zzb.zzy(Unknown Source)
at com.google.android.gms.common.internal.zzbk.zzz(Unknown Source)
at com.google.android.gms.common.internal.zzbl.zzr(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.zzc(Unknown Source)
at com.google.android.gms.common.api.internal.zzs.setResult(Unknown Source)
at com.google.android.gms.auth.api.signin.internal.zzg.zza(Unknown Source)
at com.google.android.gms.auth.api.signin.internal.zzt.onTransact(Unknown Source)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method) 04-01 17:59:15.604 27814-27814/? D/TanC: onDisconnected()`
任何人都可以建议,我缺少什么以及问题是什么。搜索后,我了解到可能是我的 Oauth 2.0 客户端 ID 与应用程序不匹配,但后来我也匹配了。
提前致谢
我收到这个错误是因为当我们在 linked app 之后点击 Authorize app 时,它显示了在 play store 上传的 apk 的默认 SHA1,但这与我们上传的不同所以要创建它,我们需要使用 keytool 命令。理想情况下,我们应该添加调试 SHA1 证书以及使用我们用来生成发布 apk 的密钥库的 SHA1 证书。
以下是命令,其中 C:\Program Files\Java\jdk1.7.0_72\bin 是 Java 在您的电脑中安装的路径,D:\Java\libGdx\apk\keystore\android.jks是您的生产密钥库的路径
C:\Program Files\Java\jdk1.7.0_72\bin>keytool -list -keystore D:\Java\libGdx\apk\keystore\android.jks 输入密钥库密码: 密钥库类型:JKS 密钥库提供商:SUN 您的密钥库包含 1 个条目 briskybird,2017 年 12 月 9 日,PrivateKeyEntry, 证书指纹 (SHA1):27:XX:XX:XX:XX:B2:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:BD:BF
使用下面生成调试证书
C:\Program Files\Java\jdk1.7.0_72\bin>keytool -list -keystore C:\Users\USER.android\debug.keystore
C:\Users\.android\debug.keystore 是您 debug.keystore 的默认路径,默认情况下调试密钥库的密码是 android