我正在开发手机中的混合应用程序,基本上在索引页面中有一个按钮,每次点击都会打开一个外部URL。我在Android上成功并在iOS上失败。cordova inappbrowser无法在iOS上打开外部网址
我抬头一看这些问题iOS/Cordova: InAppBrowser not working - cordova/phonegap onclick doesn't work - PhoneGap Build: how to open external url in device browser on Android? - phonegap open link in browser但遗憾的是没有这些问题帮我解决这个问题。
第一种假设可能是一个错误信息提示:iPhone上的错误信息 那里我测试我的应用程序是:[ERROR] Error initializing Cordova: Missing Command Error
。
第二个假设我对window.open
方法的onclick
事件做了错误处理,因为当我点击iOS测试设备上的打开按钮时,什么都不会发生。
下面是代码:
document.getElementById("openBrowser").addEventListener("click", function(){
var ref = window.open('http://www.espn.com', '_self', 'location=yes');
ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
ref.addEventListener('exit', function(event) { alert(event.type); });
});
<button id="openBrowser">APRI</button>
正如你可以看到上面这段代码的作品,太对谷歌的纹波仿真器的工作原理和我刚才在说我的问题的开始它也适用于Android(链接到Android网络应用程序https://play.google.com/store/apps/details?id=com.phonegap.unoxtutti&hl=it) 事实上,我不知道什么问题可能是在这种故障背后,前者或t他后一种假设。
除了科尔多瓦插件inappbrowser是在config.xml中
<plugin name="org.apache.cordova.inappbrowser" />
我真的无法找到错误,但我希望能有你提供必要的信息,以帮助我解决这个看似无法解决的问题
测试环境为Google Ripple Emulator,Phonegap Desktop App和Phonegap Mobile App。桌面应用程序创建项目的目录,而移动应用程序和谷歌纹波模拟器连接到桌面应用程序,并且是我的测试环境。最后但并非最不重要的是,在外部网址成功打开时,它不会在移动应用程序中打开,并且应用程序打开时会抛出该外部网址。
你列出了你的网址吗?见例如[Cordova Docs](https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/)。 – Beat
@Beat我有意图的白名单,适用于window.open方法是否足够,或者我需要白名单我试图打开的确切URL? – Riccardo
@Beat这个导航白名单是什么意思? –
Riccardo