Я разрабатываю гибридное приложение в телефонной запинке, и в основном у меня есть кнопка на индексной странице, которая при каждом нажатии открывает внешний url. Я преуспел на Android и провалился на iOS.cordova inappbrowser не может открыть внешний url на 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
.
Вторая гипотеза Я делаю что-то не так с событием onclick
window.open
, потому что, когда я нажимаю кнопку открытия на тестовом устройстве 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>
Как вы можете видеть выше фрагмент кода работает и работает на пульсация эмулятора Google тоже, и как я уже говорил ранее, на начало моего вопроса оно работает также и на Android (ссылка на приложение для Android android https://play.google.com/store/apps/details?id=com.phonegap.unoxtutti&hl=it) На самом деле я не уверен, какая проблема может быть за этим сбоем либо от прежнего, либо от t последняя гипотеза.
Кроме Cordova плагин inappbrowser в config.xml
<plugin name="org.apache.cordova.inappbrowser" />
Я действительно не в состоянии найти ошибку, но я надеюсь, что предоставили вам необходимую информацию, чтобы помочь мне исправить эту кажущуюся трудноразрешимую проблему
Испытательные среды: Google Ripple Emulator, Phonegap Desktop App и Phonegap Mobile App. Приложение для рабочего стола создает каталог проекта, в то время как мобильное приложение и эмулятор google ripple подключены к настольному приложению и являются моей тестовой средой. Наконец, но не в последнюю очередь на эмуляторе ряби, внешний url успешно открывается, пока он не находится в мобильном приложении, а при нажатии открывается окно initialization error
.
У вас есть белый список вашего url? См. [Кордова Документы] (https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/). – Beat
@Beat У меня есть белый список намерений, который применяется для метода window.open, это достаточно или мне нужен белый список точного url, который я пытаюсь открыть? – Riccardo
@Beat это белый список навигации, что вы имеете в виду? –
Riccardo