Cordova 3.0 - 在iOS中的外部浏览器中打开链接

Spl*_*ous 13 javascript ios cordova

在iOS上使用Cordova 3.0时,如何在设备本机浏览器中打开链接?

人们建议使用window.open( url, "_system" )但这在Cordova 3.0中不起作用.

我的尝试

if( navigator.app ) // Android
    navigator.app.loadUrl( url, {openExternal:true} )
else // iOS and others
    window.open( url, "_system" ) // opens in the app, not in safari
Run Code Online (Sandbox Code Playgroud)

有谁知道一个适用于Cordova 3.0的解决方案?
谢谢

dan*_*ias 19

注意:要使其window.open('somelink', '_system')工作,您现在需要一个设备级插件,即inAppBrowser.以下是Cordova 3.0的安装说明

来自Docs for 3.0:

从版本3.0开始,Cordova将设备级API实现为插件.使用命令行界面中描述的CLI插件命令为项目添加或删除此功能:

$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git
$ cordova plugin rm org.apache.cordova.core.inappbrowser
Run Code Online (Sandbox Code Playgroud)

这些命令适用于所有目标平台,但修改下面描述的特定于平台的配置设置:

iOS(在config.xml中)

<feature name="InAppBrowser">
    <param name="ios-package" value="CDVInAppBrowser" />
</feature>
Run Code Online (Sandbox Code Playgroud)

我只是测试了它,它的工作原理.

  • 值得注意的是,InAppBrowser插件似乎也能够处理`_system`链接([http://cordova.apache.org/docs/en/3.1.0/cordova_inappbrowser_inappbrowser.md.html#window.open](http: //cordova.apache.org/docs/en/3.1.0/cordova_inappbrowser_inappbrowser.md.html#window.open)) (9认同)