(统一)无法通过Android上的Google Play服务进行身份验证

时间:2019-01-08 20:41:41

标签: android unity3d google-play google-play-services google-play-games

我在尝试通过Android游戏进行身份验证时遇到了麻烦,我使用playfab + google play服务在google上进行身份验证,但我什至无法使用Google帐户{{1}在playfab上进行身份验证}永远不会成功,并且它在回调中返回的消息是“身份验证已取消”,我得到的唯一有用的日志消息是

  

[Play Games Plugin DLL]应用程序正在暂停,这会断开与   RTMP客户端。离开房间。身份验证已取消[Play游戏插件   DLL] DEBUG:在游戏线程上调用用户回调

有时会抛出

  

[Play Games Plugin DLL]开始身份转换。操作:SIGN_IN状态:   ERROR_TIMEOUT

  

[Play Games Plugin DLL]开始身份转换。操作:SIGN_IN状态:   ERROR_NOT_AUTHORIZED

但仅此而已。最奇怪的是,它打开了Google Play游戏弹出窗口,要求获得许可,我接受了它,一切按预期进行,但在应用程序中却从未成功。我已经在Playfab上注册了平台插件,在google开发者控制台上添加了链接的网络应用,将客户端的oauth ID和密码复制到了playfab,配置了重定向的uri和端点链接(参考号:https://www.youtube.com/watch?v=FIse9VOk-FE,{ {3}})。但是这些都不起作用,我无法通过它进行身份验证,无论它是否通过Playstore安装,我还没有尝试过将它作为Play商店的Alpha版本进行测试,这是唯一的事情,目前它是在内部测试中

[更新1:] 我醒着使用的代码:

Social.localUser.Authenticate

我用于登录的代码:

PlayGamesClientConfiguration config = new 
PlayGamesClientConfiguration.Builder()
        .AddOauthScope("profile")
        .WithInvitationDelegate(GoogleInvitation)
        .WithMatchDelegate(GoogleMatch)
        .RequestEmail()
        .RequestServerAuthCode(false)
        .RequestIdToken()
        .Build();
    PlayGamesPlatform.InitializeInstance(config);
    PlayGamesPlatform.DebugLogEnabled = true;
    PlayGamesPlatform.Activate();

3 个答案:

答案 0 :(得分:1)

可以提供一些代码吗?首先,我认为您需要致电

PlayGamesPlatform.Activate()

之后,所有社交功能都应该起作用。

要真正测试Google Play服务,您还需要将您的应用部署到Alfa / Beta测试或在Play Market中发布并从市场下载,否则将无法正常工作。

答案 1 :(得分:0)

原来,我不是应用程序游戏服务的测试访问列表上的人,因为我不是我没有发现的所有者。现在解决了。

答案 2 :(得分:0)

我收到“已取消真实信息”并解决了问题via this post:

基本上是因为我允许Google用自己的密钥对应用程序进行签名而发生的。在我转到GooglePlayConsole->版本管理->应用签名后,很明显。

“已为此应用启用了Google Play应用签名”。

因为已启用,所以我不得不为另一个网页“ Google API”而烦恼。在这里,我必须从功能区的下拉菜单中选择“我的游戏”,进入“凭据”选项卡,并使用适当的SHA-1创建新的凭据。

但是该链接(在此答案中)会对其进行详细说明。