2012-01-23 67 views
1

我使用phonegap创建应用程序。当我试图将远程网址“包含”为网页时,我遇到了问题。我在Android上工作,通过更改super.loadUrl();这很容易。一段时间后,我发现我可以更改startPage(iOS版)。现在我可以在iOS应用程序中包含远程网页,但电话似乎没有加载。phonegap iphone外部网址

没有事件(如deviceready)将被调用,我不能使用phonegap api。

对此有任何帮助吗?

+0

我想我可以帮助你,请告诉我你在尝试加载远程URL时看到了什么,你说“phonegap似乎没有加载”,你看到了什么错误? –

+0

你好,我没有收到任何错误。页面确实加载,内容将被显示。我已将一个devideready事件附加到dom,但该事件将永远不会触发。 –

+0

只是为了记录,我在Android应用程序中使用相同的网址,并且效果很好 –

回答

4

为了让您能够在外部网站上运行PhoneGap代码,您需要将网站列入白名单。每个平台都有不同的白名单方式。对于iOS,您需要在“ExternalHosts”键下的PhoneGap.plist中添加主机。

+0

是的,我必须将外部网站列入白名单才能加载应用程序。但是,这似乎并没有解决phonegap运行的问题。 –

+2

刚刚注意到您对Android和iOS都使用相同的网址。你的HTML中是否有一些逻辑来选择正确的phongeap-ver.js文件?不幸的是.js文件现在依赖于平台。 –

+0

对,不知道我需要不同的phonegap.js文件。明白了,谢谢。 –

0

你在哪里载入PhoneGap.js文件?如果您正在本地加载JS文件,它将不会触发事件。 JS文件需要从远程加载的同一页面加载。

[编辑] 只是注意到,你说你可以在Android上浏览相同的URL。 Android和iOS的PhoneGap.js文件不同。如果您使用的是通用文件,那可能是问题所在。

+0

phonegap-1.3.0.js与我的远程服务器上的index.php位于相同的目录中:) –