发布或管理权限不允许请求有读取权限 FACEBOOK SDK
Posted
技术标签:
【中文标题】发布或管理权限不允许请求有读取权限 FACEBOOK SDK【英文标题】:Publish or manage permissions are not permited to to be requested with read permissions 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,我应该怎么做?
【问题讨论】:
【参考方案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 方法,然后重新授权? 如果您有一个活动会话,您可以使用read
或publish_action
权限重新授权它。如果您正在打开一个活动会话,建议以读取权限打开它。此后,您可以使用其他权限对其重新授权。
参考此链接从 3.1 升级到 3.2 developers.facebook.com/docs/tutorial/iossdk/…
现在不推荐使用这些方法。你有其他的来代替它们吗
对不起,自从这个答案以来,我还没有研究过 Facebook SDK。您必须查看他们的 SDK 文档,他们必须已向建议的方法发出信号,而不是已弃用的方法。以上是关于发布或管理权限不允许请求有读取权限 FACEBOOK SDK的主要内容,如果未能解决你的问题,请参考以下文章