我目前正在尝试将Facebook登录和注册流程应用到我们的应用程序中.
但是有一点问题.我从Web-Api获得了权限,如果我尝试将它们传递给Facebook SDK的openActiveSessionWithReadPermissions方法,则会出现以下消息的错误:
但是有一点问题.我从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,我该怎么做?
解决方法
如果要使用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类.