Открытие собственного приложения карты из 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>