在 Phonegap 3 中加载外部页面作为主窗口的首选方式

Posted

技术标签:

【中文标题】在 Phonegap 3 中加载外部页面作为主窗口的首选方式【英文标题】:Preferred way to load an external page as the main window in Phonegap 3 【发布时间】:2014-01-15 20:24:23 【问题描述】:

在 Phonegap 3 (Cordova 3.1.0+) 中加载远程 url 作为主页的首选方式是什么?

我发现如果我只是将标签设置为外部 URL,它只会在新的 Chrome 窗口中打开(在 android 上)。

如果我使用 approach described in the accepted answer here,我会得到相同的行为 - 在新窗口中打开。

另外,我发现我根本无法打开自签名 https 链接。如果我实现fix described here,那么我会超时,增加 loadUrlTimeoutValue 的超时值只会导致应用无限期等待。

最终,我想要的是能够将自签名 URL 直接打开到 android 应用程序中。这个应用程序不需要在 Play 商店中,也不需要关心盲目接受自签名证书的影响。我怎样才能做到这一点?

【问题讨论】:

我想知道你的意图是什么?通常的做法是使用 javascript 与服务器端代码交互,而不是将外部页面加载到您的应用程序中。也许如果你解释一下用例,我们可以找到一个好的解决方案。 【参考方案1】:

也许 iframe 设置为全宽和全高?

【讨论】:

我明天会测试这个,但我记得这和 InAppBrowser 有同样的问题。【参考方案2】:

我相信this SO answer 对 HTTPS 接受未签名的 SSL 证书有更好的说明,这似乎得到了很好的评价。

关于将页面加载到主视图的问题,我刚刚对此进行了测试,它似乎正在用外部页面替换现有的 WebView(应用内)。

<a href="#" onclick="var ref=window.open('http://google.com', '_self');">Google (Webview)</a>

【讨论】:

以上是关于在 Phonegap 3 中加载外部页面作为主窗口的首选方式的主要内容,如果未能解决你的问题,请参考以下文章

选择在 iOS 应用上的外部浏览器中加载的内容

Laravel 在模态窗口中加载外部 URL

本地数据未在 phonegap build + appframework 应用程序中加载

在java中加载一个类作为组件

Phonegap iPhone目标链接问题

在 framework7 包装器中加载外部页面