2016-05-03 7 views
0

Я работаю над очень простым приложением в тот момент, когда есть табуляция, открывающая различные веб-просмотры, содержащие разные URL-адреса.Titanium WebView - Есть ли способ остановить открытие системного приложения?

Одним из веб-просмотров является ссылка на карты Google, на устройстве, которое я использую, установлено приложение Google Maps. Вместо того, чтобы открывать ссылку на веб-сайте google maps, вместо этого она открывает ссылку в приложении. Если я тестирую приложение в симуляторе без установленного приложения Google Maps, веб-просмотр загрузит версию веб-сайта.

Есть ли способ остановить использование устройства системным приложением и заставить его использовать веб-сайт? До сих пор я не мог найти никакой информации.

Спасибо.

+0

Просто мысль. Возможно, вы можете использовать событие ** beforeload ** для веб-просмотра и проверить загружаемый URL-адрес. И заставить его открыться в вашем веб-обзоре? – Bowie

ответ

0

Я очень удивлен тем, что WebView делает то, что вы описываете. Я ожидаю, что он будет напрямую загружать содержимое URL-адреса, который вы предоставили, независимо от того, зарегистрировано ли другое приложение для этой схемы URL-адресов. Но я возьму ваше слово.

У меня есть две идеи по этому поводу:

  • вы могли бы использовать ti.map вместо Google Maps URL? Я не уверен, что ваша карта содержит; это может быть непрактично для вас

  • Вы можете использовать HTTPClient для извлечения HTML из URL-адреса google maps, а затем вызвать WebView.setHtml() с помощью этого HTML-кода? Я бы предположил, что вам, возможно, придется добавить элемент в HTML, чтобы получить все относительные URL-адреса на странице для работы ...