- PVSM.RU - https://www.pvsm.ru -
Загоревшись после недавней статьи [1] я решил реализовать свою мечту, сделав то же самое для своего самого обычного телефона.
Скачать можно тут [2]
Сразу кидаю ссылку на GitHub с описанием проекта и фич [3], а некоторые подробности под катом
На самом деле, все подробности описаны на страничке по ссылке выше. Так что поделюсь тем, что там не указано. В статье не описан процесс пошагового создания приложения, скорее просто заметки.
Прежде всего большое спасибо читателям passerby [4], kwikpik [5], shuler [6] за очень важную информацию в комментариях к статье [1]
Прежде всего, нужно получить координаты видимого прямоугольника. Точный метод расчета мне честно было лень искать, так что я пошёл в лоб и вывел коэффициент «градусов широты/долготы на 100 пикселей».
Следующей загвоздкой стало преобразование координат из WGS84 Datum в Spherical Mercator EPSG:900913.
Нужный код был найден здесь [7]. А вот этим [8] товарищам спасибо за замечательную реализацию Math.util в j2me.
Вводить координаты вручную ужасно, нужен гугловский геокодер.
Чтобы приручить его, мне потребовался
URLEncoder отсюда [9]
и JSON парсер отсюда [10]
Далее обращаемся к геокодеру [11] (указав в качестве области СПб) и радуемся жизни.
С радостью делюсь проектом, кодом, да будет всем счастье. Тем более сегодня такая солнечная погода :)
p.s. Как же люблю java за то что такую штуку можно сотворить менее чем за сутки.
Автор: iPavel
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/obshhestvenny-j-transport/6958
Ссылки в тексте:
[1] статьи: http://habrahabr.ru/post/143229/
[2] Скачать можно тут: https://github.com/downloads/iPavel92/j2meSPbTransport/Mobile%20SPB%20transport.rar
[3] ссылку на GitHub с описанием проекта и фич: https://github.com/iPavel92/j2meSPbTransport/wiki
[4] passerby: http://habrahabr.ru/users/passerby/
[5] kwikpik: http://habrahabr.ru/users/kwikpik/
[6] shuler: http://habrahabr.ru/users/shuler/
[7] здесь: https://github.com/ofelbaum/spb-transport-app/blob/master/src/main/java/com/emal/android/transport/utils/GeoConverter.java
[8] этим: http://code.google.com/p/supercalc-j2me/source/browse/trunk/SuperCalc/src/akme/mobile/util/MathUtil.java?r=3
[9] отсюда: http://www.developer.nokia.com/Community/Wiki/Google_Static_Maps_API_in_Java_ME
[10] отсюда: https://github.com/greyson/j2me-json
[11] геокодеру: https://developers.google.com/maps/documentation/geocoding/?hl=ru
Нажмите здесь для печати.