Подтвердить что ты не робот

Android - запуск google-карты через веб-адрес

На iPhone URL-адрес maps.google.com перехватывается и загружается приложением native google maps. Я хотел бы сделать то же самое на Android, но Google Maps загружается в браузере.

Итак, на веб-странице можно ли открыть этот url http://maps.google.com/maps?saddr=brighton&daddr=timbuktu в приложении Android Google Map?

Я вижу из этого вопроса, что вы можете сделать это из другого приложения через Intent. Можете ли вы активировать эти намерения из браузера?

Изменить. При дальнейшем тестировании я обнаружил, что пользователю будет предложено открыть ссылку в браузере или приложении карты для стандартных ссылок html на maps.google.maps:

<a href="#" onclick="location.href='http://maps.google.com/maps?saddr=brighton&daddr=timbuktu'; return false;">show route</a>

У меня возникла проблема, потому что я использую javascript для установки window.location.href через обратный вызов API-интерфейса Location (чтобы я мог получить местоположение пользователя, а затем открыть карту). Я открыл отчет об ошибках для этого.

4b9b3361

Ответ 1

Ввод гео: 0,0? q = google в адресную строку открывает активность карт и выполняет поиск google поблизости.

Я предполагаю, что это будет работать из ссылки на странице, но не проверено.

полный список доступных целей здесь: http://developer.android.com/guide/appendix/g-app-intents.html

Ответ 2

<html>
  <body>
  <H1>
   <a href="geo:42,2?z=8">Click here for maps</a>
 </h1>
   <BR><BR>
   <a href="geo:53,-9?saddr=(53,-9)&daddr=(42,4)">Click here for route maps</a>
 </body>
</html>

Первый щелчок правильно загружает приложение Google на Android и масштабирует его. Во втором клике я пытаюсь реплицировать двухточечный маршрут (начальный адрес- > адрес назначения), и он, похоже, не работает.

Ответ 3

В этот момент я использую функцию javascript, которая меняет следующие шаблоны:

'urlTemplates': {
            "default": "http://maps.google.com?q={streetAddress} {addressLocality} {addressRegion} {postalCode} {addressCountry}",
            "ios": "maps:?saddr=Current Location&daddr={streetAddress} {addressLocality} {addressRegion} {postalCode} {addressCountry}",
            "android": "geo:{streetAddress} {addressLocality} {addressRegion} {postalCode} {addressCountry}",
            "windows_phone7": "maps:{streetAddress} {addressLocality} {addressRegion} {postalCode} {addressCountry}",
            "windows_phone8": "bingmaps:?where={streetAddress} {addressLocality} {addressRegion} {postalCode} {addressCountry}",
            "blackberry": "javascript:blackberry.launch.newMap({'address':{'address1':'{streetAddress}','city':'{addressLocality}','country':'{addressCountry}','stateProvince':'{addressRegion}','zipPostal':'{postalCode}'}});"

с какой информацией я получил в зависимости от устройства, я не помню, откуда у меня есть все шаблоны, и я сожалею об этом, и после этого я открываю адрес, используя window.location.href.

Надеюсь, это поможет вам. Потому что в то время, когда мне это нужно, я потратил много времени на его изучение.

Ответ 4

Я действительно сильно пострадал от этого, но, наконец, получил ответ.
Не использовать href, это не сработает.

Для навигации - window.open( "google.navigation: q = 23.3728831,85.3372199 & mode = d", '_system');

Для поиска - window.open( "geo: 0,0? q = pizza", '_system');

Читайте здесь - https://developers.google.com/maps/documentation/android/intents

Ответ 5

Попробуйте этот код PHP

 echo "<a href='geo:".$lat.",".$lng."?q=".$lat.",".$lng."(".$NameLocationLabel.")'>Open map Native</a>";

Его работы для меня в телефоне, андроиде и IOS ^^