第一次Facebook Connect授权/登录后iPhone应用程序崩溃

时间:2011-08-24 16:27:21

标签: iphone facebook login crash authorization

我一直在寻找答案,但却找不到答案 问题是:

  • 我有一个iPhone应用程序(在AppStore上)使用Facebook iPhone SDK
  • 我正在使用SDK以下列方式授权用户:
NSArray *permissions =  [NSArray arrayWithObjects: @"offline_access",  
@"publish_stream", @"user_birthday", @"user_hometown", @"user_interests",  
@"user_location", @"email" ,nil];  

[((MyAppDelegate *)AppDelegate).facebook authorize:permissions delegate:self];

在AppDelegate中我有这段代码:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url  
{  
    return [self.facebook handleOpenURL:url];  
}

现在:
  - SDK打开Safari并显示着名的facebook授权屏幕   - 用户按下“允许”按钮   - iOS尝试返回应用程序..
  - 但是 - BAM! - 崩溃! - 在申请推出之前!!

非常重要:

  • 用户只有在安装后首次启动应用时才会遇到此崩溃 当他们在崩溃后再次打开应用程序时,一切都运行良好,他们甚至签到
  • 即使用户卸载应用并再次安装,也无法再现此方案。它只发生在第一次安装的第一次启动时。

这里真的需要帮助。 90%的用户在生产中遇到此问题 非常感谢。

1 个答案:

答案 0 :(得分:1)

在这一行:

[((MyAppDelegate *)AppDelegate).facebook authorize:permissions delegate:self];

您将委托设置为self,以便该类必须使用以下函数实现FBSessionDelegate

(void)fbDidLogin;
(void)fbDidNotLogin:(BOOL)cancelled;
(void)fbDidLogout;