【问题标题】:Publish or manage permissions are not permited to to be requested with read permissions FACEBOOK SDK发布或管理权限不允许请求有读取权限 FACEBOOK SDK
【发布时间】:2012-12-18 13:21:42
【问题描述】:

我目前正在尝试在我们的应用程序中实现 Facebook 登录和注册流程。 但是有一个小问题。我已经从我们的 Web-Api 获得了权限,如果我尝试将它们传递给 Facebook SDK 的 openActiveSessionWithReadPermissions 方法,则会出现以下消息的错误:

> Terminating app due to uncaught exception
> 'com.facebook.sdk:InvalidOperationException', reason: 'FBSession:
> Publish or manage permissions are not permited to to be requested with
> read permissions.

所以我似乎无法使用此方法传递发布或管理权限。 我现在的问题是:为什么我不能将此参数传递给 openActiveSession,我应该怎么做?

【问题讨论】:

    标签: ios facebook facebook-ios-sdk


    【解决方案1】:

    如果你想用ReadPermissions以外的权限打开一个活动会话,你可以试试

     openActiveSessionWithPublishPermissions:(NSArray *)permissions 
                             defaultAudience:(FBSessionDefaultAudience) 
                                allowLoginUI:(BOOL)allowLoginUI
                           completionHandler:^(FBSession *session, FBSessionState status, NSError *error)handler
    

    方法。或者,如果您想用其他权限重新授权已经打开的会话,您可以使用

    - (void)reauthorizeWithReadPermissions:(NSArray*)readPermissions
                     completionHandler:(FBSessionReauthorizeResultHandler)handler;
    

     - (void)reauthorizeWithPublishPermissions:(NSArray*)writePermissions
                        defaultAudience:(FBSessionDefaultAudience)defaultAudience
                      completionHandler:(FBSessionReauthorizeResultHandler)handler;
    

    方法。尝试通过 FBSession.h 类。

    【讨论】:

    • 因此,如果我想打开具有读取和发布权限的活动会话,我必须调用其中一种 openActiveSession 方法,然后重新授权?
    • 如果您有一个活动会话,您可以使用readpublish_action 权限重新授权它。如果您正在打开一个活动会话,建议以读取权限打开它。此后,您可以使用其他权限对其重新授权。
    • 参考此链接从 3.1 升级到 3.2 developers.facebook.com/docs/tutorial/iossdk/…
    • 现在不推荐使用这些方法。你有其他的来代替它们吗
    • 对不起,自从这个答案以来,我还没有研究过 Facebook SDK。您必须查看他们的 SDK 文档,他们必须已向建议的方法发出信号,而不是已弃用的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    相关资源
    最近更新 更多