Facebook Connect SSO无法在某些iPhone上运行

Tim*_*ich 6 iphone facebook single-sign-on ios

我已FBConnect根据教程在我的iphone应用程序中实现了SSO .到目前为止,我已经在两部手机上测试了它,其中一部让我可以正常使用这个功能,而另一部手机只是打开Facebook应用程序并立即关闭它.我能够建立一个有效的会话,但对话似乎只关闭了其中一个.
可能是什么问题呢?任何帮助深表感谢.

Ang*_*qui 3

我认为你的问题是你没有正确的配置,无论是在客户端(你的应用程序)还是在服务器端(FB 应用程序配置)。请检查以下两项:

客户端应用程序:

确保您已将正确的 FBAppId 作为 URL 处理程序引入 Info.plist 中。Facebook 将尝试使用此处理程序打开应用程序,如果不起作用,您的应用程序将不会打开。

Plist配置

(将 替换XXXXXXXXXX为您的 FB appID)

检查您的应用程序(在 appDelegate 中)是否处理​​上面添加的自定义 URL:

- (BOOL)handleOpenURL:(NSURL*)url
{
    NSString* scheme = [url scheme];
    NSString* prefix = [NSString stringWithFormat:@"fb%@", facebookAppId];
    if ([scheme hasPrefix:prefix]) {
        return [fb handleOpenURL:url];
    }
    return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation 
{
    return [self handleOpenURL:url];
}

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url 
{
    return [self handleOpenURL:url];  
}
Run Code Online (Sandbox Code Playgroud)

服务器端

检查您是否在 FB 配置页面中正确配置了您的bundleId。您可以在https://developers.facebook.com/apps中检查这一点,选择您的应用程序,然后在版本面板中:

FB配置

如果您正确配置了这两件事,那么它在任何情况下都应该可以工作(安装了 FBapp 或基于 Safari)。