Я создаю гибридное приложение с использованием Ionic с ngCordova. В рабочем процессе входа в приложение я возвращаю страницу с сервера в подключаемый модуль InAppBrowser. Мне нужно прочитать некоторые значения с возвращенной страницы в моем приложении Ionic.
Обычный способ - вызвать executeScript при событии loadstop и настроить обратный вызов, когда этот скрипт что-то вернет. И у меня есть такая настройка, как вы можете видеть в следующем коде. Однако, что бы я ни пробовал, эмулятор iOS, эмулятор Android обратный вызов не запускается.
Вот страница, которая открывает веб-сайт Google в InAppBrowser.
$cordovaInAppBrowser.open('http://google.com', '_blank', options)
.then(function (event) {
//alert('succed')
})
.catch(function (event) {
//alert('errored')
});
И ниже показан обработчик события loadstop. Сценарий 1 + 1 вводится нормально, потому что я вижу предупреждение с 2. Однако функция обратного вызова вообще не вызывается !!
$rootScope.$on('$cordovaInAppBrowser:loadstop', function (e, event) {
$cordovaInAppBrowser.executeScript(
{
code: "alert(1+1);"
},
function (values) {
alert('add completed');
});
});
Я попробовал несколько эмуляторов, но ни один из них не работает. Заранее цените вашу помощь.