【问题标题】:FBSDKLog: System authorization failed:FBSDKLog:系统授权失败:
【发布时间】:2013-04-16 23:32:18
【问题描述】:

我添加了用于访问用户帐户的 facebook sdk。但是,当用户已经通过 iOS 6 facebook 登录 facebook 时,在我的应用程序的第一页中,它必须显示应用程序正在请求配置文件权限的警报。为此,我在应用程序委托中添加了以下代码

[FBSession openActiveSessionWithAllowLoginUI:true];

NSArray *permissions = [NSArray arrayWithObjects:
                        @"friends_about_me",nil];
[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:true  
 completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
    if (error) {
        NSLog(@"Failure");
    }
}];

return YES;

}

-(BOOL)application:(UIApplication *)application openURL:(NSURL )url sourceApplication: (NSString) sourceApplication 注解:(id)注解 { 返回 [FBSession.activeSession handleOpenURL:url]; }

我收到了正确的警报。

但是当我点击确定按钮时,它给了我以下错误

FBSDKLog:系统授权失败:'Facebook 服务器无法完成此访问请求:remote_app_id 与存储的 id 不匹配'。这可能是由于 bundle 标识符与您在 developers.facebook.com/apps 上的服务器上的应用配置不匹配造成的。

但在我的 fb 开发者帐户中,一切都很好。请帮我解决这个问题。

谢谢!

【问题讨论】:

标签: objective-c facebook ios6


【解决方案1】:

您确定在 Facebook 应用设置中设置了相同的捆绑包 ID?验证的一个好方法是使用此代码将捆绑 ID 打印到控制台,并将其与 Facebook 上的应用设置进行比较:

NSLog(@"Bundle ID: %@",[[NSBundle mainBundle] bundleIdentifier]);

【讨论】:

    【解决方案2】:

    亲爱的 Sudha,您的捆绑包 ID 可能尚未从 facebook 的所有服务器确认。你必须等待它。

    【讨论】:

      【解决方案3】:

      请注意您的捆绑包 ID 区分大小写!

      【讨论】:

        【解决方案4】:

        当我在 3.5 英寸模拟器中运行我的项目时,我遇到了同样的问题,它显示了同样的错误。它在 4 英寸模拟器中运行良好。我通过转到我的 3.5 英寸模拟器设置解决了这个问题,然后我从我的 Facebook 帐户中注销。然后我重新运行它工作的项目。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-04-03
          • 2021-06-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多