1

我正在为我的应用程序使用 Facebook iOS SDK v3.5,我发现如果我安装了 facebook 应用程序并且没有登录到 iOS 设备(设置 > facebook),那么如果我第一次登录到我的应用程序,它工作正常:它将切换到 facebook 应用程序的登录视图,并通过“确定”和“取消”按钮显示一些权限。但是在我登录我的应用程序并注销并再次登录后,仍然会显示 facebook 应用程序中的相同权限屏幕。我认为预期的行为是第二​​次登录时我们不应该看到该权限屏幕,因为我们已经在第一次登录时授予了这些权限。

同样的事情发生在 FB SDK v3.5 的示例项目“Scrumptious”中。有人知道如何解决这个问题吗?谢谢。

4

1 回答 1

1

如果我对您的理解正确,则该行为按预期工作。基本上,这里的语义是用户已经注销,所以要求他们确认再次登录是合适的。具体来说,示例(以及大多数应用程序)中的注销代码是清除设备上的令牌缓存,因此下次应用程序要求新令牌时。

你是对的,一旦用户授予权限(直到他们撤销权限),Facebook 服务器确实知道这一点。结果,登录屏幕中有一个细微的流程(您可以通过将发布权限授予美味来看到这一点,然后下次您请求发布时,它将类似于“您已经授予此权限”)。

因此,从技术上讲,您可以不清除令牌缓存,但为什么还要使用注销选项。

希望有帮助。

于 2013-05-23T21:21:45.727 回答