В нашем приложении Cordova мы используем InAppBrowser (не так ли?) для запуска нашего локального веб-приложения. Иногда нам нужно открыть браузер устройства (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.