Как открыть <a href> ссылку за пределами веб-просмотра Cordova (в Safari или на Google Map)?
Я создал размещенное приложение, используя этот учебник: Страница учебника Microsoft
В этом веб-приложении есть <a href>
ссылка доступна, которая открывает Google Map, как:
<a href=""https://maps.google.com/?q=" + myAddressString target="_system"> Address URL </a>
При нажатии на эту ссылку, он переводит мое приложение в фоновый режим и открывает карту в приложении GoogleMap или в браузере Safari.
Но иногда эта же ссылка открывает URL-адрес карты в самом веб-представлении моего размещенного приложения cordova, из-за чего мое приложение исчезло, и у пользователя не было возможности вернуться обратно в мое приложение.
Может кто-нибудь, пожалуйста, подскажите, как встроить URL карты в размещенное веб-приложение.
Примечание: я уже использовал плагин InAppBrowser Cordova в своем приложении.
Конфиг файл:
<access origin="*" />
<access origin="http://*/*" />
<access origin="https://*/*" />
<access origin="content:///*" />
<access origin="https://*google.com/*" />
<access origin="https://maps.google.com/*" />
<access origin="https://*.mywebsite.com/*" />
<access origin="https://*.myotherwebsite.com/*" />
<access origin="https://accounts.mywebsite.com/*" />
<access origin="https://accounts.myotherwebsite.com/*" />
<access origin="https://officerapp.mywebsite.com/*" />
<access origin="https://officerapp.myotherwebsite.com/*" />
<allow-intent href="*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="https://*google.com/*" />
<allow-intent href="https://maps.google.com/*" />
<allow-intent href="https://accounts.mywebsite.com/*" />
<allow-intent href="https://accounts.myotherwebsite.com/*" />
<allow-intent href="https://officerapp.mywebsite.com/*" />
<allow-intent href="https://officerapp.myotherwebsite.com/*" />
<allow-navigation href="https://accounts.mywebsite.com/*" />
<allow-navigation href="https://accounts.myotherwebsite.com/*" />
<allow-navigation href="https://myapp.mywebsite.com/*" />
<allow-navigation href="https://myapp.myotherwebsite.com/*" />
2 ответа
Сначала убедитесь, что у вас нет ничего из этого в вашем config.xml
<allow-navigation href="*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
Эти теги позволяют переходить на http, https или что-либо внутри вашего приложения.
А потом добавить
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
Это запускает внешний браузер для всего, что начинается с http или https
Это довольно просто сделать, попробуйте открыть его, как будто вы открываете ссылку в новой вкладке. Просто добавьте этот атрибут в ваш код:
target="_blank"
Так что у тебя есть:
<a href=""https://maps.google.com/?q=" + myAddressString target="_blank"> Address URL </a>