0

I'm doing login via facebook in one of my app. For that I'm using FBSessionLoginBehaviorWithFallbackToWebView as FBSession behavior as per hierarchy is works fine in FB installed app, Safari but problem is in login with facebook system app.

My code is as per below.

FBSession *session = [[FBSession alloc] initWithPermissions:@[@"public_profile",@"user_friends"]];
    [FBSession setActiveSession:session];

[session openWithBehavior:FBSessionLoginBehaviorWithFallbackToWebView
            completionHandler:^(FBSession *session,
                                FBSessionState status,
                                NSError *error) {

                FBRequest *request = [FBRequest requestWithGraphPath:@"me/friends"
                                                          parameters:@{}
                                                          HTTPMethod:@"GET"];

                [request startWithCompletionHandler:^(FBRequestConnection *connection,
                                                  id result,
                                                  NSError *error){
                FBUserDetail=(NSArray*)result;
                NSLog(@"FBUSERDETAIL:%@",FBUserDetail);

                cricoFrndArray=[FBUserDetail valueForKey:@"data"];
                FBUserDetail=[FBUserDetail valueForKey:@"data"];

            }];
}];

As per this I am able to login via facebook installed app which is running well, even when user have not install facebook app it will go for facebook system account where I am getting error and if there is no facebook system account found then it will go for login via safari which is running well.

Error is as follow.

Error Domain=com.facebook.sdk Code=2 "The operation couldn’t be completed. (com.facebook.sdk error 2.)" UserInfo=0x14da88c0 {com.facebook.sdk:ErrorLoginFailedReason=com.facebook.sdk:SystemLoginCancelled, com.facebook.sdk:ErrorInnerErrorKey=Error Domain=com.apple.accounts Code=7 "The Facebook server could not fulfill this access request: The proxied app cannot request publish permissions without having being installed previously." UserInfo=0x14dacf40 {NSLocalizedDescription=The Facebook server could not fulfill this access request: The proxied app cannot request publish permissions without having being installed previously.}, com.facebook.sdk:ErrorSessionKey=, expirationDate: (null), refreshDate: (null), attemptedRefreshDate: 0000-12-30 00:00:00 +0000, permissions:(null)>}

Ekta Padaliya
  • 5,743
  • 3
  • 39
  • 51
Mrugesh Tank
  • 3,495
  • 2
  • 29
  • 59

0 Answers0