Iphone Facebook授权不';我不能在IOS 4.01下工作

Iphone Facebook授权不';我不能在IOS 4.01下工作,iphone,ios,facebook,authorization,Iphone,Ios,Facebook,Authorization,我正在使用官方facebook IOS API中的[facebook授权:权限]通过单点登录连接到facebook 如果设备上没有安装Facebook应用程序(Safari授权),我的代码可以正常工作。它也可以在安装了Facebook应用程序(Facebook应用程序授权)的运行IOS5的设备上正常工作 但是,在运行IOS 4.01(我一直在测试我的应用程序)的设备上,如果安装了Facebook应用程序,则授权请求将启动Facebook应用程序,但当它返回时,我在应用程序中得到以下回复:Hand

我正在使用官方facebook IOS API中的
[facebook授权:权限]
通过单点登录连接到facebook

如果设备上没有安装Facebook应用程序(Safari授权),我的代码可以正常工作。它也可以在安装了Facebook应用程序(Facebook应用程序授权)的运行IOS5的设备上正常工作

但是,在运行IOS 4.01(我一直在测试我的应用程序)的设备上,如果安装了Facebook应用程序,则
授权
请求将启动Facebook应用程序,但当它返回时,我在
应用程序中得到以下回复:HandleOpenURL:

fb[MY_APP_ID]://authorize#error=unknown%5Ferror
这会导致调用
fbDidNotLogin:
,并且我的应用程序失败

删除和重新安装Facebook应用程序和/或我自己的应用程序没有帮助。在我的应用程序之外注销Facebook也是如此:在本例中,Facebook应用程序显示登录屏幕,但随后返回相同的错误

如果该设备上没有安装Facebook应用程序,并且使用Safari进行授权,则一切正常

我在别处读到,这个错误可能是由于我的Bundle ID的定义不正确造成的,但是(1)所有地方(my info.plist、Facebook和iTunes Connect)的定义都是正确的,(2)在其他配置中都可以正常工作


是否有IOS 4.01不支持的东西导致了这种行为,或者我做错了什么?(实际上,目前我没有做太多工作,我只是提出授权请求并实现委托方法)。

要纠正这种行为,您应该明确禁止facebook应用程序的facebook授权。默认代码具有以下代码行-

[通过FBAppAuth自我授权:是safariAuth:是]

若要禁止使用facebook应用程序进行授权,并强制仅使用safari进行授权,请将其更改为-

[通过FBAppAuth自我授权:否safariAuth:是]