FB与Three20连接 - 在Facebook的

问题描述:

我一直在使用Three20开始记录的问题,建设FB连接iPhone的iOS应用,FB与Three20连接 - 在Facebook的

我想打电话给[facebook authorize:permissionsArray delegate:self];

,但它不会做任何事情,因为FB的功能试图将子视图添加到Three20应用程序中不存在的主窗口。我试图使用Safari认证,但它不会返回到我的应用程序并完成该过程。

是否有其他方式通过Three20 iOS应用程序登录FB账户?

谢谢!

我猜你提到的Safari验证是Facebook API的单点登录功能。如果你在模拟器中,它只是表现为Safari。如果您使用的是安装了Facebook应用程序的物理设备,它会将您转到Facebook上的授权页面,或者如果已获得授权,您只需登录即可。

我相信您在单点标记上丢失的那一段on设置回调URL并在.plist应用配置文件中为您的应用注册该URL。

Facebook已经对让一切设置一个相当详细的教程: https://developers.facebook.com/docs/guides/mobile/#ios

特定的URL需要在这个文件中唯一标识 与iOS应用程序进行注册 。创建一个新行 命名的URL类型与单个项目, URL计划,包含单个 值,fbYOUR_APP_ID(文字 字符fb后跟您的应用程序 id)。

我也使用Three20框架和Facebook SDK,两者应该很好地一起工作。虽然有足够的步骤让Facebook SDK在第一时间启动并运行,但要实现起来有点棘手。

+0

谢谢!对我很好... – 2011-04-28 16:15:00

+0

另一个问题 - 当过程完成时,fbDidLogin方法不会被激发。在登录后做任何其他选项完成?谢谢! – 2011-04-28 16:58:55

+1

需要检查的两件事:确保你的App正在处理来自Facebook SSO的url回调,你需要在你的主应用程序委托中定义方法:' - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *) url'同时确保你正在使用facebook实例的对象实现协议'FBSessionDelegate',并且在调用authorize时正确设置了facebook实例上的委托:'[facebook authorize:kAppId permissions:permissions delegate:self];' – Ryan 2011-04-28 18:15:07