我一直在到处寻找答案,但找不到。
问题是:
- 我有一个 iPhone 应用程序(在 AppStore 上),它使用脸书 iPhone SDK https://github.com/facebook/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];
}
And now:
- SDK 打开 Safari 并显示众所周知的 facebook 授权屏幕。
- 用户按下“允许”按钮。
- iOS 尝试返回应用程序..
- 但是然后 - 砰! - 碰撞! - 在应用程序重新启动之前!
很重要:
- 用户仅在安装后首次启动应用程序时遇到此崩溃。
当他们在崩溃后再次打开应用程序时,一切正常,他们甚至已登录
- 即使用户卸载该应用并重新安装,此后的场景也无法重现。它仅在第一次安装的第一次启动时发生。
这里真的需要帮助。我的 90% 的用户在生产时都会遇到这种崩溃。
多谢。
在这一行中:
[((MyAppDelegate *)AppDelegate).facebook authorize:permissions delegate:self];
您将委托设置为self
所以该类必须实现FBSessionDelegate
具有这些功能:
(void)fbDidLogin;
(void)fbDidNotLogin:(BOOL)cancelled;
(void)fbDidLogout;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)