如何在phonegap webview中加载网页?

时间:2011-12-21 21:42:21

标签: android cordova

我希望能够链接到phonegap webview中的网页,该网页在同一个phonegap webview中加载外部网页。如果我这样做,它会加载到webview中:

public class App extends DroidGap {
   @Override
   public void onCreate (Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      super.loadUrl("http://google.com");
   }
}

但是,我希望首先启动内部页面,并指向外部页面的链接,所以我这样做:

public class App extends DroidGap {
   @Override
   public void onCreate (Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      super.loadUrl("file:///android_asset/www/index.html");
   }
}

我有一个链接:

<a href="#" onclick="navigator.app.loadUrl('http://google.com')">Google</a>

但此链接会在应用内部在网络浏览器中启动谷歌,而不是在phonegap webview中启动。我该怎么做才能确保在app的phonegap webview中启动指向外部页面的链接?

3 个答案:

答案 0 :(得分:18)

啊......在this question找到答案。 我不得不添加

<access origin="www.google.com"/>

phonegap.xml文件。

答案 1 :(得分:9)

这似乎已经改变了,访问来源似乎没有任何效果。如果你正在使用cordova白名单插件,似乎是标准的。您需要在config.xml文件中使用allow-navigation。如果没有它,它将打开您的Web浏览器。

<plugin name="cordova-plugin-whitelist" version="1"/>
<allow-navigation href="https://google.com/*" />

然后你可以使用window.location ='https://google.com'移动到JS中的另一个网页。

答案 2 :(得分:3)

在Cordova.plist的最新phonegab(1.7)中有一个Key:OpenAllWhitelistURLsInWebView将此设置为YES。