phonegap 新窗口 inappbrowser插件
在Phonegap 开发过程中,需要调用外部网页,又要跳出白名单安全限制,可以使用 inappbrowser插件。
http://plugins.cordova.io/#/package/org.apache.cordova.inappbrowser
使用案例:
http://blog.csdn.net/gapapp/article/details/17093601
inappbrowser插件,顾名思义,就是应用内置浏览器。使用inappbrowser插件的时候,默认手机返回键按下,是退出内置浏览器,而不是历史记录的回退。
解决方法:改两个地方
1、org.apache.cordova.inappbrowser\src\android\InAppBrowserDialog.java
找到onBackPressed方法,改为下面的
public void onBackPressed () { if (this.inAppBrowser == null) { this.dismiss(); } else { // better to go through the in inAppBrowser // because it does a clean up if (this.inAppBrowser.canGoBack()) { this.inAppBrowser.goBack(); } else { this.inAppBrowser.closeDialog(); } } }
2、org.apache.cordova.inappbrowser\src\android\InAppBrowser.java
找到goBack方法,把private改为public
public void goBack() { if (this.inAppWebView.canGoBack()) { this.inAppWebView.goBack(); } }
然后添加一个方法
public boolean canGoBack() { return this.inAppWebView.canGoBack(); }