在带有外部 URL 的 iOS 上使用 PhoneGap/Cordova

Posted

技术标签:

【中文标题】在带有外部 URL 的 iOS 上使用 PhoneGap/Cordova【英文标题】:Using PhoneGap/Cordova on iOS with external URL 【发布时间】:2013-03-11 16:28:40 【问题描述】:

我希望我的 phonegap/cordova 应用加载外部页面,而不是本地页面。

现在我这样做了,但是我的插件 (javascript) 不起作用,因为它们是从本地 index.html 调用的。

在这种情况下我该怎么办?我应该将插件放在我的外部 URL 上并将它们加载到外部 index.html 上吗?我也应该在那里加载cordova-2.5.0.js?

如果这是唯一的方法,如果我想加载一个我不拥有服务器的外部页面,但我想启用推送通知,会发生什么?

如何启用这些插件?

【问题讨论】:

我试过了,但设备准备就绪不会不惜一切代价调用。 【参考方案1】:

d0nparaalias,

看看这个项目:https://dl.dropbox.com/u/930742/so/CordovaBrowserSO.zip

如您所见,里面没有 index.htmlwww/ 文件夹。

所有文件都已上传到服务器,应用程序将根据需要下载它们。

我已经通过执行 p.1 中的步骤来完成它。来自https://***.com/a/15319156/753878的回答。

在服务器上,您可以在使用模板 Cordova 项目创建的基本 www/ 文件夹中看到所有文件:

您在服务器上直接包含在index.html 中的所有插件和内容。

如果您从上面的存档中查看config.xml,您会看到<content src="http://dymv.comeze.com/www/index.html" />

启动时的应用会说:

希望这是您想要达到的目标。 如果不是 - 请提供有关您想要达到的结果的更多信息。

BR. 尤金

【讨论】:

另一个很好的答案。这正是我所需要的。总而言之,无论我想要/需要使用什么插件,我都将所有 javascript 放在服务器端,然后将其包含在我的外部 index.html 中?我尝试了 pushnotifications 插件,我将所有本机代码放入我的应用程序,并将我的 javascript 包含在我服务器上的外部 url 中,一切正常。但我有一个问题。当我试图从我的项目中手动删除 www 文件夹时,当我启动 xcode 时,我收到一个关于文件夹丢失的错误。所以最后我使用了你的 xcode 项目。你是如何做到没有错误的? 另外你能告诉我在 phonegap 2.1 上让应用程序加载一个外部 url 的过程是什么,那里没有 config.xml ,但是一个 .plist ? >所以最后我使用了你的 xcode 项目。你是如何做到没有错误的?//// 你应该删除 Build Phases 中的脚本,它将 www 文件夹复制到我猜的 Bundle 中。跨度> 是的,你是对的!现在完美运行!我该怎么做: dymv.comeze.com/www/index.html" /> ,在具有 .plist 而不是 config.xml 的 phonegap-2.1.0 中? 另外你能告诉我让应用程序在phonegap 2.1上加载外部url的过程是什么,那里没有config.xml,但是一个.plist?////其实我建议你如果有任何可能的话,升级 Cordova。现在我正在检查您关于 2.1 版的问题。也许***.com/a/12504248/753878 会有所帮助?但我没有运气。【参考方案2】:
window.loadURL = function(url)
    navigator.app.loadUrl(url,  openExternal:true );
    return false;

在标签中使用它,例如

<a href='#' onclick="window.loadUrl('http://google.com'); return false;">open</a>

【讨论】:

以上是关于在带有外部 URL 的 iOS 上使用 PhoneGap/Cordova的主要内容,如果未能解决你的问题,请参考以下文章

如何打印(在屏幕上)带有外部 url 的 iframe 所需的所有 JS 代码

带有 windows phone 7 的协议缓冲网络

cordova inappbrowser 无法在 iOS 上打开外部 url

在 iOS 9 问题上使用 Alamofire 上传带有 URL 参数的图像

如何从 URL 解析带有 Windows Phone 8 中图像的 Json 数据?动态数据

如何在 windows phone 8 中使用 push Sharp 发送带有参数的磁贴通知