(com.facebook.sdk.login error 304.) Error with FBSDK 4.2

Hassan Aftab picture Hassan Aftab · Jul 1, 2015 · Viewed 16.8k times · Source

I am trying to implement login with Facebook functionality, But I am getting following error in return.

Login Failed with error: The operation couldn’t be completed. (com.facebook.sdk.login error 304.)

Here is my Code

    - (void)loginWithFacebook {
        NSString *const read_actions = @"email";

        [[[FBSDKLoginManager alloc] init]
         logInWithReadPermissions:@[read_actions] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
         {
             if (error) {
                 NSLog(@"Login Failed with error: %@", error.localizedDescription);
             }
             else if (result.isCancelled)
             {
                 NSLog(@"Login Failed due to Cancel");
             }
             else
             {
                 if ([result.grantedPermissions containsObject:read_actions]) {
                     NSLog(@"Permission granted");

                 }
             }
         }];
    }

Answer

Minal Soni picture Minal Soni · Sep 17, 2015

This may because of previous login token not cleared.So before login just logout.

NSString *const read_actions = @"email";
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logOut];
[loginManager logInWithReadPermissions:@[read_actions]
                               handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
                                   if (error) {
                                       NSLog(@"Login Failed with error: %@", error.localizedDescription);
                                   }
                                   else if (result.isCancelled) {
                                       NSLog(@"Login Failed due to Cancel");
                                   } else {
                                       if ([result.grantedPermissions containsObject:read_actions]) {
                                           NSLog(@"Permission granted");
                                        }
                                   }
                               }];