objective c - FBSDKLoginManager error code 308 and singleton does not resolve it -


i using facebook ios sdk 4.5.1 . didn't want use 4.6 force login flow safarivirwcontrollee only.

i error 308 when trying login if fbsdkloginmanager called before. creating singleton other threads suggested not work

to summarize error 308 occured in 2 cases 1. call login twice. 2. logout , login again.

here code singleton

static fbsdkloginmanager *sharedloginmanager = nil;  +(fbsdkloginmanager*)sharedloginmanager; {  static dispatch_once_t  oncepredecate; dispatch_once(&oncepredecate,^{     sharedloginmanager=[[fbsdkloginmanager alloc] init];    });  return sharedloginmanager; }  - (id)init { if (self = [super init]) {  } return self; 

}

code login

if ([fbsdkaccesstoken currentaccesstoken]) {     [self processlogininfo]; } else {       [fbsdksettings enableloggingbehavior:fbsdkloggingbehaviornetworkrequests];      [[facebookloginsingleton sharedloginmanager] logout];     [[facebookloginsingleton sharedloginmanager]      loginwithreadpermissions: @[@"public_profile",@"email",@"user_friends"]      handler:^(fbsdkloginmanagerloginresult *result, nserror *error) {          if (error) {//} }]; 

code logout

    if ([fbsdkaccesstoken currentaccesstoken])      {           [[facebookloginsingleton sharedloginmanager] logout];            [fbsdkaccesstoken setcurrentaccesstoken:nil];      } 

i'm still dealing same error, , (assuming info.plist, appdelegate, , facebook app set correctly), the issue goes away when not running app xcode.

yeah, appears bug solution not use debugging tools.

if need debug login flow, there dozen different ways outside if xcode, had crashlytics installed , let log crash enough times until got out other kinks in login code.


Comments