Publish or manage permissions are not permited to to be requested with read permissions FACEBOOK SDK

11,663

If you want to open an active session with permissions other than ReadPermissions, you can try

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

method. Or if you want to reauthorize an already open session with other permissions , you can use

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

or

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

Methods. Try going through FBSession.h class.

Share:
11,663
Sebastian Boldt
Author by

Sebastian Boldt

I am a web and mobile software architect and developer specializing in iOS. Passionate about creating awesome user experiences, designing beautiful user interfaces, and writing maintainable, structured, and best-practice orientated code. Continuously trying to improve skills and learn new technologies.

Updated on June 15, 2022

Comments

  • Sebastian Boldt
    Sebastian Boldt almost 2 years

    I am currently trying to implement Facebook Login and Registration Flow to our Application. But there is a little Problem. I've got the permissions from our Web-Api and if i try to pass them to the openActiveSessionWithReadPermissions Method of the Facebook SDK an error with the following message occurs :

    > 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.
    

    So it seems that i cant pass publish or manage permissions with this method. My question now is : Why can i not pass this parameter to the openActiveSession and how should i do this ?