【问题标题】:Facebook Unity SDK Browser locks up when additional permissions are requested请求额外权限时 Facebook Unity SDK 浏览器锁定
【发布时间】:2014-04-19 23:32:50
【问题描述】:

我正在使用 Unity 开发 Facebook 画布游戏,除了奇怪的 Facebook 行为之外,事情一直在进行。我正在尝试遵循 Facebook 关于何时以及哪些权限获得授权的指南。

当我第一次启动我的应用程序时,我只是获得了基本权限 (basic_info),因为我真的只需要用户先登录。

FB.Login("basic_info", loginCallback);

这可以在 Unity 编辑器中根据需要正常工作,提供令牌。但是,当我的应用程序达到我想要触发 OG 故事的程度时,如果它们不存在,我需要首先获得 publish_actions 权限。根据我在搜索中找到的所有内容,通过 SDK for Unity 获得额外权限的唯一方法是再次调用 FB.Login ,提供权限范围。因此,在适当的时候,如果我的权限中还没有 publish_actions,我会调用:

FB.Login("publish_actions", loginPermCallback);

在 Unity 编辑器中,这对我来说是不可测试的,因为编辑器登录需要一个令牌,如果有办法使用测试用户令牌指定此特定权限,我还没有找到它。所以我正在通过画布托管游戏对此进行测试。当它被调用时,我确实得到了一个对话框,表明我的应用程序希望获得发布到时间线的权限。当我单击确定批准它时,我的游戏重新出现,但一切都被锁定。几乎就像一个无限循环被击中了,但我已经做了彻底的检查,而且这只被调用一次。然而,它确实为我的测试用户设置了权限,通过在 Facebook 应用程序设置中检查它们。

如果我在应用启动时获得了这两个权限,那么一切似乎都可以正常工作,但根据文档不应该这样做。

此外,此对话框获得额外权限以全屏显示是否正常?窗口本身不是全屏的,但它后面包含一个全屏的白色背景。我不确定这是否与 OnHideUnity 回调有关。

如有必要,我会提供更多信息。我正在使用 Unity 4.3.4f、Facebook SDK 5.0.4

【问题讨论】:

    标签: facebook facebook-unity-sdk


    【解决方案1】:

    在对事物进行了广泛的试验和错误之后,我发现了导致我这种情况的锁定的原因。在我需要获得额外权限的场景中,我在 Unity 中有一个使用 ClothRenderer 的标志。出于某种原因,权限对话框根本不喜欢 ClothRenderer 运行。我通过解决方法解决了我的问题,方法是在调用 FB.Login 之前关闭 ClothRenderer,然后在登录回调中将其重新打开。

    【讨论】:

      猜你喜欢
      • 2015-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-11
      • 1970-01-01
      • 1970-01-01
      • 2012-05-30
      相关资源
      最近更新 更多