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

API Java для Карт Google (или аналогичный)

Мне было интересно, есть ли библиотека Java, которая выступает в качестве оболочки для API Карт Google. Меня интересует отображение спутниковой карты определенного региона (lon, lat) на моем настольном приложении. Он не обязательно должен быть Google Maps, любая услуга карты будет делать трюк.

Что мне нужно, но это библиотека для работы с настольным клиентом, без javascript, GWT и т.д.

Любые идеи?

4b9b3361

Ответ 1

Если вы просто хотите отобразить изображение спутниковой карты для определенной долготы долготы (без панорамирования/масштабирования карт Google), то вы должны проверить Статические карты Google.

Вам просто нужно создать строку URL-адреса, а затем создать HTTP-запрос (из вашей реализации java) для изображения (в любом формате, который вам нравится). Вы можете указать целую группу parameters в URL-адресе, чтобы получить полученное вами изображение спутника:

staticmap_example.jpg

Из URL-адреса:

http://maps.google.com/staticmap?center=40,26&zoom=1&size=150x112&maptype=satellite&key=ABQIAAAAgb5KEVTm54vkPcAkU9xOvBR30EG5jFWfUzfYJTWEkWk2p04CHxTGDNV791-cU95kOnweeZ0SsURYSA&format=jpg

EDIT: Хорошо, я действительно удалил этот ответ, потому что обнаружил, что раздел 10.8 в TOS явно запрещает доступ к статическим картам извне браузера. Но затем я обнаружил это часто задаваемые вопросы, которые, похоже, позволяют это. Я могу попросить человека Google и получить последнее слово.

EDIT: Спасибо Paracycle, не уверен, что это новое дополнение к часто задаваемому вопросу, но в любом случае оно довольно явное, вам разрешено не.

Ответ 2

Карты Google не позволяют использовать изображения в настольных приложениях. Microsoft сотрудничает с USGS в http://terraserver-usa.com/. Существует свободно доступный веб-сервис с Axis или CXF, чтобы создать объект java для доступа к службе.

Кроме того, у НАСА есть проект World Wind, который имеет API Java. Изображения не являются изображениями Google, но большая часть изображений Google основана на этих изображениях.

Ответ 3

Недавно Google запустил библиотеку Maps Services for Java, которая обеспечивает поддержку геокодирования, маршрутов, матриц расстояний, элементов высот и временных зон API для Java.

Ответ 4

встроить элемент управления веб-браузера в свой клиент, отображая HTML-страницу, использующую javascript API.

Все остальное сломается в конце концов, поскольку, по крайней мере, Google и Microsoft обычно меняют формат ссылок для своих аэрофотоснимков, чтобы усложнить их очистку и сохранить в автономном режиме (поскольку они не купили лицензии у поставщиков контента для автономное хранение этих изображений).

Другие сервисы (например, геолокационная служба Google) могут легко использоваться с Java, и "нормальные карты" тоже хорошо работают, но антенны сложны (по крайней мере, когда я пробовал это в последний раз), но, конечно, можно сделать, если вы можете отправить обновление при изменении формата...

изменить. Возможно, он отличается от сервиса Google Maps для предприятий, но рассчитывает заплатить за него сумму в пять цифр...

Ответ 5

Чтобы увидеть литеральную карту в окне вашего рабочего стола, вы можете встроить элемент управления браузера, основанный на Java, и совместим с приложением Google Maps.

См. этот вопрос, чтобы узнать, как внедрить браузер в ваше приложение Java:

Вставка окна веб-браузера в Java

Ответ 6

Вам, скорее всего, придется обратиться к веб-службам Microsoft Map Point. Я не знаю, предлагает ли Google что-то сопоставимое с Javascript.

Ответ 8

Возможно, вам стоит взглянуть на официальный API данных Google Maps, который, как я полагаю, имеет клиент Java. Однако я думаю, что это просто для извлечения/обновления "данных" части Карты, поэтому он не даст вам доступ (который вы, вероятно, не лицензируете) для фактических фотографий.