android - Google Play 游戏服务无法登录 - 返回已取消
问题描述
我正在使用 Corona SDK 并尝试将 Google 服务添加到我的游戏中,并按照此处的教程进行操作,但登录失败。我尝试使用 Android Studio 和 logcat 进行调试,并注意到登录开始后 gpgsInitListener 会抛出以下内容:
event.isError: {
isError = true,
name = "login",
phase = "canceled"
}
有趣的是,我从来没有机会选择使用哪个帐户(我认为其他应用程序会显示正在使用的电子邮件并要求继续)。在我访问包含代码的场景后,我看到一个“Google Play Games”弹出窗口,然后是一个旋转的轮子,然后是一个黑屏。
我的代码与教程中的代码完全相同,只是 packageName、appID 和 leaderboardID 不同。我已经用 Corona 对应用程序进行了签名,然后将 APK 上传到了 Google 控制台(因此 SHA1 指纹应该是正确的)。我的应用和游戏以内部测试状态发布,我已将我的电子邮件添加到测试人员列表中。
在 logcat 中,我看到以下消息:
2019-09-05 21:01:13.404 6603-10712/? W/GamesServiceBroker: Client connected with SDK 18360000, Services 19056039, and Games 110770048
2019-09-05 21:01:13.560 15677-15677/? W/SignInActivity: onSignInFailed()...
2019-09-05 21:01:13.560 15677-15677/? W/SignInActivity: Sign in failed during 6
2019-09-05 21:01:13.560 15677-15677/? W/SignInActivity: ==> Returning non-OK result: 10002
2019-09-05 21:01:13.589 6603-10712/? W/GamesServiceBroker: Client connected with SDK 18360000, Services 19056039, and Games 110770048
并查看文档:
登录游戏服务的尝试失败。例如,如果网络不稳定,或者用户的帐户已被禁用,或者无法获得同意,则可能会发生这种情况。
此处提供完整日志。
解决方案
您是否有机会使用 Corona 的默认调试密钥库?
发生此错误的原因通常是您使用的密钥库与您在 Google Play 的开发者控制台中与您的应用关联的密钥库不同。为了在您的应用程序中使用 Google Play 游戏服务,甚至测试它们,您必须使用您为该特定游戏创建的密钥库来构建您的应用程序。
您可以在此处找到更多信息:https ://developers.google.com/games/services/console/enabling
推荐阅读
- python - 使用 Python 配对相似的文件名
- flutter - 一键热重启flutter应用
- excel - 您可以使用 Excel 的新动态函数创建交叉表吗?
- laravel - 如何在 api 路由中使用 laravel 中的路由名称
- logging - 数据访问和访问透明度云审核日志中的数据有多敏感?
- pine-script - Pinescript strategy.exit() 执行顺序
- yocto - 在 Yocto 图像配方中,我可以包含另一个图像配方吗
- node.js - express/typescript:在服务器端,如何创建一个全局变量来存储多个套接字?
- amazon-ecs - GitHub OAuth App + Django + ECS Fargate 问题
- php - 我想为 Woocommerce 制作插件