开发应用程序,不会在iOS原生FB应用程序中运行

时间:2012-05-29 10:23:17

标签: facebook ssl canvas https proxy

我正在开发一个FB应用程序,它需要能够在通常的桌面FB站点(带有周围的FB制服)上运行,在移动设备浏览器上(我使用的是HTML5和Bootstrap根据设备调整布局,以及iOS和Android上的原生移动Facebook应用程序。

特别是最后一个场景 - 我试图在我的MBP上进行开发,并且我使用指向我旁边的Web服务器框的本地域名(在主机中设置)。为了从iOS设备开始工作,我让Charles在我的MBP上作为代理运行并更新了iPhone wifi代理设置,以便所有iPhone http请求都通过Charles传送,因此iPhone也可以使用本地化域名。

通过移动FB网站进行测试时,如果我导航到测试应用程序,我创建了FB移动网站,在新的Safari选项卡中启动画布,并且工作正常。 但是,在iOS原生FB应用程序中,当我导航到应用程序时,我收到了

  

"抱歉,出了点问题"

消息代替画布内容的位置(参见下面链接的图像)。

iPhone screengrab

由于FB强制https画布URL现在我使用我的Web服务器的内置自我认证证书,以便可以提供https。在safari浏览器中,我最初得到一个不受信任的证书警告,我接受,然后我使用我的HTML没有问题。

有没有其他人看过这个问题,知道如何解决这个问题?我假设FB应用程序遇到了不受信任的证书问题,但由于本机应用程序正在调用本地服务(通过代理)URL,我不明白为什么会出现问题(可以将FB应用程序设置为不接受不受信任的证书?)。

我真的需要在iOS应用程序中测试我的代码,否则我无法向客户证明FB使用我的代码。

干杯

(p.s。我尝试使用3G而不是本地wifi代理,以防出现问题,但它仍然无法在原生iOS FB应用程序中工作)

1 个答案:

答案 0 :(得分:0)

原来问题是由于我在应用设置中指定的移动网址设置为使用 https 。可能这是因为本机应用程序不接受不受信任的SSL证书(这也可能是因为它在浏览器中没问题,因为可以接受不受信任的证书)。

将协议更改为http修复了问题。奇怪的是,Facebook并不坚持将https用于移动应用URL,因此使用http不是问题。