用户以后不叫应用程序中打开URL方法验证了Facebook(application open Url

2019-07-31 18:32发布

我在我的iOS应用程序Facebook的升级到3.0,并使用在提供的代码https://developers.facebook.com/docs/howtos/login-with-facebook-using-ios-sdk/对于通过Facebook用户登录,但问题是,该用户之后允许Facebook的访问- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation方法不会被调用。 但有趣的是,当我在该应用程序中创建一个新的应用程序和整合相同的代码被称为.......我同样的方法正在使用的Xcode 4.4。 任何建议为什么它与我现有的代码发生。

Answer 1:

确保你已经设置了fburl和APPID好。 如果使用具有比使用相同的Facebook应用多个设备/模拟器APPID可能发生。



Answer 2:

难道这可能是因为旧的应用程序设置为不能在后台运行,在你的应用程序的plist设置? 我一直有这个同样的问题。 看来,如果应用程序在后台保持运行,它会返回并调用的OpenURL。 但是,如果应用程序没有在后台运行,它会返回并调用应用中:didFinishLaunchingWithOptions代替,而不要拨打的OpenURL。 它可以从启动选项得到的网址:

NSURL *url = [launchOptions objectForKey: UIApplicationLaunchOptionsURLKey];

但我还没有想出如何调用这个,使其具有与应用相同的效果:来自Facebook的身份验证返回时的OpenURL。 希望这有助于一些。



Answer 3:

更新的Xcode 4.5 GM为正确的工作,可能是有人在Xcode以前的版本中的问题。



文章来源: application open Url method not called after user authenticates the facebook