Откройте локальный файл KML в Google Maps на Android - PullRequest
20 голосов
/ 28 мая 2010

Я загрузил файл KML на устройство Android. Какой самый простой механизм загрузки наложения этого KML-файла в Карты Google? Я не хочу загружать файл KML в Интернет, а лучше открыть его локально.

Ответы [ 4 ]

13 голосов
/ 26 августа 2011

Чтобы загрузить kml в Google Maps на Android без написания приложения , вы можете создать небольшой html-файл где-нибудь с гео-URI-ссылкой на файл kml, а затем щелкнуть по этой ссылке в любой сети Android. браузер.

Например: предположим, что ваш файл kml находится в / sdcard / overlay.kml , тогда вы пишете ссылку на гео-URI, например:

<html>
<head><title>Example KML link page using a geo-uri</title></head>
<body>
  <a href="geo:0,0?q=file:///sdcard/overlay.kml">overlay.kml</a>
</body>
</html>

Нажатие на ссылку запустит Карты, а затем Карты попытается загрузить и ваш kml.

(Очевидно, если ваш файл kml находится на веб-сервере, файл: // part можно заменить на http: // servername)

Имейте в виду, однако, что версия Maps для Android не поддерживает ту же версию / диапазон элементов kml, что и настольная версия (или Google Планета Земля).

2 голосов
/ 23 июля 2013

Я не могу рассказать о старых версиях Android, но на Nexus 4 с Android 4.2.2 это очень просто:

  • Перенесите файл KML на устройство Android и сохраните его на SD-карте любым способом (USB, электронная почта, приложение PAW , ...)
  • Используйте приложение для управления файлами (например, Solid Explorer , Astro , ...), чтобы найти файл в файловой системе и щелкнуть по нему.
  • Появится Google Планета Земля, и файл KML отобразится в верхней части снимка со спутника Земли.

В Earth вы также можете нажать на любые объекты KML, чтобы отобразить связанную информацию (если она хранится в файле KML).

1 голос
/ 22 июня 2015
File KML = new File("/sdcard/doc.kml");
Intent i = getPackageManager().getLaunchIntentForPackage("com.google.earth");
i.setDataAndType(Uri.fromFile(KML), "xml");
startActivity(i);

источник: http://enladodelbien.blogspot.com/2015/06/kmlkmz-to-google-earth.html

1 голос
/ 28 января 2014

Предполагая, что вы можете показывать свой KML на OpenStreetMap вместо Google Maps, вы также можете использовать osmdroid + OSMBonusPack (https://github.com/MKergall/osmbonuspack).

В зависимости от того, что вы хотите сделать:

  • Вы можете просто использовать демонстрационное приложение "OSMNavigator", чтобы загрузить и отобразить файл KML на карте (KML может быть локальным или с URL-адреса).

  • Или вы можете использовать библиотеку OSMBonusPack в своем приложении, чтобы отображать содержимое KML по своему усмотрению.

...