Открытие собственного приложения карты из javascript без использования координат долготы и широты
Привет, Я ищу способ открыть собственное приложение карты приложения из приложения, связанного с телефоном, с помощью javascript.
До сих пор мой reaserch показал, что для Android мне придется использовать ссылку в этом формате:
<a href="geo:38.897096,-77.036545">Geolocation Test</a>
Это проблематично, потому что мне придется использовать внешнюю службу для преобразования адреса в координаты долготы и координат, что я бы хотел избежать, если это возможно.
В случае iOS это намного проще. Мне нужно только указать ссылку в этом формате:
<a href="maps:q=Bacau">Test 2</a>
И приложение для родной карты будет запущено.
Есть ли способ, похожий на тот, что в iOS, для Android, чтобы дать ему простую ссылку с адресом в определенном формате, и устройство будет знать, чтобы открыть его собственное приложение карты?
Ответы
Ответ 1
Cordova 3.6.0 представляет второй белый список для ограничения того, какие URL-адреса могут запускать внешние приложения. В предыдущих версиях Кордовы все URL-адреса, отличные от http, такие как mailto:, geo:, sms: и намерение, были неявно разрешены как цель тега. Из-за возможности приложения утечки информации, если уязвимость XSS позволяет злоумышленнику создавать произвольные ссылки, эти URL-адреса также должны быть в белом списке, начиная с Cordova 3.6.0.
Кордова 3.6.0 Руководство по белым спискам
Итак, вам нужно явно добавить файл config.xml:
<access origin="tel:*" launch-external="yes" />
<access origin="mailto:*" launch-external="yes" />
Ответ 2
Глядя на список намерений Android, это должно быть возможно с помощью параметра q
в пространстве URI geo:
.
Попробуйте следующее:
<a href="geo:0,0?q=Bacau">Test</a>