从Facebook iOS SDK 3.1.1开始,Facebook将openActiveSessionWithPermissions分为2部分:
openActiveSessionWithReadPermissions和openActiveSessionWithPublishPermissions(解释为here)。

但是,Facebook的文档说先调用openActiveSessionWithReadPermissions
然后调用reauthorizeWithPublishPermissions。我什么时候应该使用openActiveSessionWithPublishPermissions没有任何解释。

请帮助我了解两种方法之间的区别以及何时应使用它们。

提前致谢,

最佳答案

以下是一些可能的方案:

  • 用户是第一次来您的应用程序,并且从未授权过您的应用程序。
  • 用户正在返回您的应用,并且先前已授权您的应用。缓存的 token 可用,因此可以打开 session 。缓存的 token 还存储以前授予的权限。

  • 在情况(1)中,您只能打开一个具有读取权限的 session 。您不能在第一次请求发布权限。

    在情况(2)中,您可以要求发布权限。您将必须检查是否存在缓存的 token 。

    在(1)或(2)两种情况下,您都可以在最初打开 session 后始终调用reauthorize方法。

    08-04 02:51