【发布时间】:2019-02-01 18:45:53
【问题描述】:
在我们的 Cordova 应用程序中,我们使用 InAppBrowser(不是吗?)来运行我们的本地 Web 应用程序。有时我们需要打开设备的浏览器(Chrome / Safari)来处理外部链接。
当我们从设备浏览器返回时,似乎 InAppBrowser 插件停止触发事件('loadstop'、'loadstart' 等...)。我们已尝试重新注册事件,但这似乎不起作用。
有人知道为什么吗?
这里是技术信息
我们以通常的方式打开我们的本地网络应用程序:
ref = cordova.InAppBrowser.open(url, 'blank', options);
注册事件的回调也不足为奇:
ref.addEventListener('loadstop', onLoadStop);
ref.addEventListener('loadstart', onLoadStart);
ref.addEventListener('loaderror', onLoadError);
ref.addEventListener('exit', onExit);
我们尝试使用window打开外部网络浏览器:
window.open(event.url, '_system');
或者使用第二个 InAppBrowser:
var browser = new cordova.InAppBrowser.open(event.url,'_system');
我们正在使用InAppBrowser v3.0.0。这在 Android 和 iOS 上都会发生。
【问题讨论】:
标签: android ios cordova cordova-plugins inappbrowser