← All posts tagged OsmAnd

Self-Perfection
fun OsmAnd Была у меня уже забавная история как переустановка ОС на ПК привела к значительному ускорению разряда смартфона. А теперь у меня OsmAnd на телефоне заDoSил комп.

Подробности. OsmAnd умеет отправлять HTTP GET запросы с текущими координатами при включённой записи трека, Online Tracking это называется. А у меня давно уже дома крутится принимающий эти запросы наколеночный скрипт, складирующий полученные значения в MariaDB. Обновил на телефоне OsmAnd до 2.7.5 и через некоторое время обнаружил, что он теперь шлёт один и тот же GET запрос тысячи раз. Получив ответ от сервера тут же повторяет запрос до тех пор пока не придёт время отправлять следующие координаты, тогда начинает долбиться запросами с новой точкой. Почему так? Ну мой скрипт корректно отвечал при сохранении координат кодом 201 Created, а OsmAnd считал ответом об успешно завершённой операции только 200. А ответы на дублирующую точку кодом 409 Conflict вообще не похожи на OK, Ну и конечно лучший способ отреагировать на сообщение об ошибке — повторять запрос до победного конца.

Хвала 4G, OsmAnd успевал повторять запросы примерно 25 раз в секунду. Отчего раздел с базой MariaDB переполнялся бинлогами и база вставала.

Ну что, комп vs смартфон — 1:1. Правда в качестве мести не могу это засчитать, смартфон я за это время успел сменить.

Как теперь ещё разработчиков убедить, что им надо пофиксить эту ситуацию до конца.
Self-Perfection
GPS совпадение OsmAnd Backitude Google_Latitude Позавчера собрался наконец запилить на домосервере скрипт для online tracking из OsmAnd, чтоб у меня хоть как-то логировались мои перемещения, раз уж Google Latitude закрыли. Запилил работающий прототип, думал уже успокосить, так тем же вечером прилетело обновление Backitude, который я использовал для логирования в Latitude, добавляющее поддержку логирования на свой сервер. Ewww. Стал вчера допиливать и понеслась...

Сейчас в "примитивном логгере" 54 SLOC, он использует 2 таблицы, и я даже подумывал о третьей, но баста, третьей не будет смещение от UTC замечательно кодируется в TINYINT. Хвала Аллаху, сейчас все часовые пояса используют смещения, кратные 15 минут.

А ведь потом я начну фантазировать, как бы прикрутить возможность просматривать координаты на специальной страницы с авторизацией по OpenID.

Использование OsMoDroid мне не нравится отсутствием контроля за своими данными. Но стоит подумать, как с ними состыковаться.

Огитхабить, что ли?