PhoneGap在Facebook SignOn期间打开Safari

时间:2011-11-25 15:27:06

标签: iphone ios xcode cordova ios5

我正在为iOS 5编写一个基于PhoneGap的应用程序。我遇到了以下问题:

我使用Facebook登录。验证成功后,应将用户返回到我的应用程序。一切正常,除了一件事 - 从Facebook返回的带有http 301(重定向)的网址在新的Safari浏览器窗口中打开而不是PhoneGap的webView。

我很困惑,因为通常我需要编写一些额外的代码来强制Safari中的PhoneGap应用程序打开URL。而现在我的情况则相反。

是否有任何解决方法可以避免此类行为?

我正在使用OS X 10.6.8,Xcode 4.2,PhoneGap 1.2.0。

1 个答案:

答案 0 :(得分:0)

如果您正在编写PhoneGap应用程序,那么您的Web应用程序是一个客户端Web应用程序 - 即它在file://协议上运行。要使Facebook登录工作,需要使用客户端Web应用程序或http(s)协议上的网站。这就是您在Facebook Developers网站上创建新应用时注册的内容。

为了使Facebook能够与客户端应用程序一起使用,无论是使用Java / C / Obj-C还是Javascript,您都需要进行两步OAuth授权。这样做并不常见,你可能需要更加努力。