суббота, 11 сентября 2010 г.

Soft : Расписание электричек на Android телефоне

После покупки аппарата с Android OS задумался о возможности хранения на нем расписания электричек (уж больно часто приходилось кататься). Вариант с серфингом по tutu.ru и яндексу отпал сразу, хотелось дома обновлять расписание по wifi и пользоваться им даже там, где нет связи. Однако ничего такого я тогда не нашел, поэтому решил собрать свой велосипед...

Первая версия программы требовала отдельный ПК с запущенным сервером, с которым она и синхронизовалась. Проблема с переносом всего функционала на аппарат была в том, что tutu.ru отдавала странички в cp-1251, при обработке которых все просто валилось (какой конкретно метод был причиной - я уже и не вспомню). Конвертирование в utf также по каким-то причинам не работало. Однако после очередной смены дизайна tutu, они также поменяли кодировку на utf-8, что позволило переписать программу в том виде, в котором ее можно увидеть сейчас.

А сейчас это программа, которая имеет следующий функционал:
  • Получение расписания между 2 станциями на заданный временной интервал с учетом отмен;
  • Работа с tutu.ru и яндекс расписаниями;
  • Редактирование списка известных станций;
  • Редактирование регулярок для вытягивания данных со страниц (чтобы не приходилось пересобирать и переставлять программу если кто-то изменил шаблон на сайте...);
  • Все полученные данные хранятся на аппарате и доступны до тех пор, пока вы сами их не удалите;
  • Возможность получения расписания только с выбранного источника. Как оказалось, при обновлении расписания на неделю между 2 станциями еще и в обе стороны, tutu может легко забанить ваш ip. Со стороны яндекса такого поведения не замечено. Поэтому, по умолчанию расписание скачивается только с яндекса. Tutu же советую использовать только как источник для сравнения. Известно, что не всегда расписание на сайте соответствует действительности, поэтому указание электрички сразу в 2-х независимых источниках резко повышает шанс ее существования:);
На данный момент, программа весит чуть меньше 100 КБайт и тестировалась на Acer Liquid (1.6, 2.1), HTC Desire (2.2 с рутом), HTC Legend (2.2), Wildfire (2.1) и Nexus One (2.2.1).

В маркете она вряд ли появится по 2-м причинам:
1. Для этого ее нужно приукрасить, сделать защиту от дурака и тому подобное. Времени же, как всегда, на все не хватает, поэтому мне главное чтобы она просто работала.
2. Для регистрации в маркете нужно выложить 25$, в чем я не вижу для себя большого смысла, т.к. разрабатывать приложения под андроид я не собираюсь.
Я таки решил зарегистрироваться в маркете, т.к. потихоньку пишутся разные программы под Android. Так что TrainDroid можно найти здесь.

FAQ по Traindroid.

4 комментария:

Антон комментирует...

Привет! Спасибо за полезную программу! Вышли, пожалуйста, копию на authenticsb@gmail.com. Спасибо!

ЗЫ Писал тебе на почту из профиля, но письма не доходят.

Alexey комментирует...

Привет. Очень хотелось бы и мне прогу. Не пойму как твой профайл посмотреть без регистрации. Пришли пожалуйста на rakata.warrior AT gmail.com

2314x комментирует...

привет! будет круто иметь расписание поездов, аналогичное расписанию электричек!

4ybaka комментирует...

Мой гуглофон ушел на пенсию, так что я пока не планирую что-либо писать под android.