Android 在浏览器中显示的 PhoneGap 外部站点

PhoneGap external site displaying in browser for Android

我遇到了 phonegap/cordova 的问题。我正在尝试让应用程序在外部网站上显示内容。我基本上只需要一个包装器应用程序,但还需要一种方法来访问 phone 资源,例如相机等。我将我的外部站点放在 config.xml 的内容标签中,但是 phone gap 只是在外部浏览器中打开网站,而不是在 phonegap 应用程序中打开网站。这在 iOS 中工作正常,在我开始拆开这个框架以使其工作之前,我想知道是否其他人有解决此问题的解决方法。我之前在 android 中构建过这样的应用程序,所以我知道它可以工作,但它使用的是 phonegap 的旧版本。我使用的版本是Phonegap 3.6.3

这是我的 config.xml 文件;

<widget xmlns     = "http://www.w3.org/ns/widgets"
    id        = "io.cordova.helloCordova"
    version   = "2.0.0">

<!-- Preferences for Android -->
<preference name="loglevel" value="DEBUG" />
<content src="https://myExternalSite.com/" />
<allow-navigation href="*" />
<access origin="*" />

来自official Docs

var ref = window.open(url, target, options);
  • ref:对 InAppBrowser 的引用 window。 (InAppBrowser)
  • url: URL 加载(字符串)。如果 URL 包含,则调用 encodeURI() Unicode 字符。
  • target:要加载 URL 的目标,一个 默认为 _self 的可选参数。 (字符串)

    • _self:如果URL在白名单中,则在Cordova WebView中打开,否则在InAppBrowser中打开。
    • _blank:在 InAppBrowser 中打开。
    • _system:在系统的网络浏览器中打开。
  • 选项:InAppBrowser 的选项。可选,默认为:location=yes。 (字符串)


一个问题是它会打开另一个 window 网络浏览器。那时移动设备上的硬件不再可用。 至于接下来要做什么,我可以推测很多。但是,如果您解释一下您要做什么会更容易吗?

发现问题是我将其指向一个子域,该子域将我重定向到登录,而不是只打开它在外部浏览器中打开的 phone-gap 容器。

修复非常简单:

我想如果有人遇到同样的问题,请确认您的网站没有在您访问该网站后立即将您重定向。