2011-12-29 1 views
1

Я разрабатываю приложение JavaME LWUIT, которое должно отображать некоторые данные на карте. И я хотел бы использовать Google Maps для этого.
Я думал о требованиях к картам и их пользовательскому интерфейсу. Они относятся к , перечисленным ниже:JavaME LWUIT: есть ли подходящая карта lib?

  • Поддельная карта. Должна быть возможность прокручивать карту с помощью сенсорного интерфейса или указателей навигации, отображаемых на карте.
  • Масштабная карта. В лучшем случае на карте должны отображаться соответствующие кнопки +/-.
  • Поиск местоположения по адресу и переход к нему (команда меню).
  • Запомните последнее посещено местонахождение.
  • Маркер для текущего местоположения.
  • Маркеры с настраиваемой иконкой и текстом, которые отображаются при выборе маркера (щелкните по нему или выберите как-нибудь).

Я потратил некоторое время на поиск соответствующей библиотеки карт для JavaME/LWUIT. Я ожидал найти бесплатную библиотеку и картографию (ха-ха).
Смотрите мои результаты ниже:

  1. библиотеки MIDMaps. URL: http://www.jappit.com/blog/midmaps-google-maps-java-me-library/ Эта библиотека использует службу Google Static Map. Неплохо ... но нужно еще много улучшений ... Я нашел следующие проблемы с этой библиотекой:
    • Маркеры: невозможно настроить значок и текст маркера. Отображение текста маркера при щелчке/выборе не поддерживается.
    • Карт-панорамирование: для этого нет элементов управления пользовательским интерфейсом (кнопки со стрелками). Выполнение панорамирования с помощью команд меню не является удобным для пользователя.
    • Карта Масштабирование: нет элементов управления пользовательским интерфейсом для этого (кнопки +/-). Не так важно ...
    • Лицензия: не разрешено использовать в мобильном приложении, если не пользователь Google Premier. Не проблема ...
  2. Nokia Maps API для JavaME. URL: http://www.developer.nokia.com/Develop/Maps/Maps_API_for_Java_ME/ Не пробовал. Но похоже, что lib выполняет все мои требования. Я не уверен в следующих вещах:
    • Качество карт.
    • Сколько это стоит? Я имею в виду стоимость использования услуги карты.
  3. Nutiteq lib, который использует сервис OpenStreetMap. URL: http://www.nutiteq.com/map-api Не освободите библиотеку, но услуга карты.
  4. API-интерфейс путеводителя. URL: http://www.guidebee.biz/ Это не бесплатно.

Теперь настало время задать мне вопросы. Что мне делать? Есть ли какие-нибудь советы?
Возможно, я пропустил некоторые возможности или lib/services?
Благодарим за помощь!

ответ

1

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

Я выбрал Nokia Maps API, потому что он обеспечивал реальные динамические карты (панорамирование, масштабирование, разбиение на страницы) и выполнил все мои требования, за исключением «Запомнить последнее посещенное местоположение» (может быть реализован сам по себе).

я встретил следующие проблемы:

  • Используя карты из LWUIT, а не из обычного приложения MIDP. Я использовал приведенный здесь подход Nutiteq SDK with LWUIT, а также реализовал собственный класс MapWidget для LWUIT.
  • Отображение дополнительной информации о щелчке маркера. В lib нет поддержки. Я должен был реализовать это самостоятельно. Подробности здесь JavaME Nokia Maps API: how to display additional info on marker click

Дополнительная информация связана с правильной библиотекой выбирая карты можно найти здесь Discussion on Nokia Forum

2

См. Демонстрацию Makeover в SVN (я обновил ее, чтобы использовать карты Google вместо API карт Yahoo, который был убит). API-интерфейс GoogleService должен быть доступен в истории SVN, который был удален (удален из-за лицензионного вздоха) в каталоге служб IO, и включает в себя локальный поиск и т. Д.

У Terrence есть demo, который включает в себя множество интересных функций, включая доступную для просмотра карту.

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

+0

Благодаря Шай! Я проверю информацию, которую вы предоставили, и сообщите здесь о результатах. – Zakhar

+0

1. О демонстрации макияжа ... Как я понимаю (исправьте меня, если я ошибаюсь), он не предоставляет необходимые мне функциональные возможности, такие как масштабируемая и масштабируемая карта (она просто отображает изображение), маркеры с настраиваемой иконкой и текст, который отображается при нажатии. Так что это мне не помогает. – Zakhar

+0

2. О демоверсии Терренса ... Хорошая демонстрация! Особенно мне нравились маркеры со смешными значками и диалогами, которые отображались при нажатии. Также загружен индикатор загрузки и мой маркер местоположения. К сожалению, снова карта не доступна для просмотра - нет панорамирования, без масштабирования, просто нажмите изображение карты. – Zakhar