hap*_*384 9 iphone facebook ios facebook-sdk-4.0 ios9
我在iOS 9上使用最新的Facebook SDK(4.6)遇到了一个问题.为了授权用户,我使用了FBSDKLoginManager.我试过设置这个:
loginManager.loginBehavior = FBSDKLoginBehaviorNative;
Run Code Online (Sandbox Code Playgroud)
但SDK似乎仍然总是使用SFSafariViewController来授权Facebook.
这是我面临的问题.如果用户使用FacebookAccountA在其设备上安装了FB应用程序,然后尝试使用我的应用程序进行身份验证,则会显示此SFSafariViewController,他们可以使用FacebookAccountB(单独的FB帐户)对应用程序进行身份验证.
然后在应用程序中,我尝试与以下内容分享:
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init];
content.contentURL = [NSURL URLWithString:shareString];
FBSDKShareDialog *dialog = [[FBSDKShareDialog alloc] init];
dialog.fromViewController = self;
dialog.shareContent = content;
dialog.delegate = self;
[dialog show];
Run Code Online (Sandbox Code Playgroud)
共享对话框的默认设置最终是FBSDKShareDialogModeShareSheet.共享表正确地显示在应用程序中,并且帖子似乎有效,但链接发布到FacebookAccountA(本机应用程序帐户),而不是FacebookAccountB(通过我的应用程序进行身份验证的链接).
因此,如果用户碰巧使用不同于他们在其原生应用上登录的Facebook帐户对我的应用进行身份验证,他们最终可能会发布到与用于验证我的应用的帐户不同的帐户.有办法防止这种情况吗?
提前致谢.
这是设计的.
在FB SDK v4.6和v3.24中,我们默认使用Safari View Controller,而不是快速应用程序切换到本机Facebook应用程序.在iOS 9中,快速应用程序切换流程生成两个插页式广告"ExampleApp想要打开Facebook"和"Facebook想要打开ExampleApp".
对于在iOS上登录Safari的数亿人来说,他们拥有非常棒的体验.
| 归档时间: |
|
| 查看次数: |
5032 次 |
| 最近记录: |