我在我的目标c项目中使用Facebook SDK 4.3.0.
我需要使用在设置中配置的帐户登录facebook.
我需要使用在设置中配置的帐户登录facebook.
为此我正在使用:
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init]; login.loginBehavior = FBSDKLoginBehaviorSystemAccount; [login logInWithReadPermissions:@[@"public_profile",@"email",@"user_friends"] handler:^(FBSDKLoginManagerLoginResult *result,NSError *error) { if (error || result.isCancelled){ if (result.isCancelled) { NSLog(@"is canceled"); } else { NSLog(@"is not canceled"); } NSLog(@"facebook login error:%ld %@",(long)error.code,[error localizedDescription]); [self showErrorWithMessage:@"Couldn't login with Facebook"]; return; } FBSDKAccesstoken *token = [FBSDKAccesstoken currentAccesstoken]; NSLog(@"facebook access token data: %@",token.tokenString); [[apiclient shared] requestAccesstoAccountWithFacebookTokenString:token.tokenString]; }];
使用在ipad中设置的facebook帐户,我运行它,但我登录失败,错误描述“Facebook帐户尚未在设备上配置”和错误代码307(根据FBSDKLoginConstants.h,它是FBSDKLoginSystemAccountUnavailableErrorCode ).
我试过2 ipads,两者都发生了同样的事情.
如果我使用FBSDKLoginBehaviorNative它工作正常(意味着它使用本机应用程序忽略设置).
How to make FBLoginView use system account by default问同样的问题,但唯一的答案是使用loginBehavIoUr,我已经在使用了. (我的评论中没有足够的声誉).
解决方法
Facebook SDK 4.7.0同样的问题.
SDK不使用NativeFlow for iOS版本> = 9.0.0.
SDK不使用NativeFlow for iOS版本> = 9.0.0.
你可以做的一切:更改SDK中的代码要么更改SDK在[NSUserDefaults standardUserDefaults]存储的数据要么使用旧版本的FB SDK
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。