Терминал сбора данных на основе телефона Google Android (первая часть)

Автор:   Кравченко Андрей, mail@andriy.co
Как известно, ANDRIY.CO в арсенале своих разработок имеет достаточно успешный продукт TCU Mobile. К сожалению, время жизни платформы Windows Mobile подходит к концу. Но жизнь не стоит на месте, ей на смену приходят новые платформы. Весь 2010 год мы внимательно следили за развитием новых платформ, сравнивали технологии, перспективы развития и привлекательность решений на их базе. Как известно, решения на мобильных платформах для бизнеса имеют свою специфику. Критерии мобильного ПО для бизнеса сильно отличаются от мобильного ПО для личного пользования.

    Опишем данные критерии.
  1. КПК (смартфон) не должен быть дорогим. Компания-дистрибутор редко приобретает одно устройство. Обычно счет идет на десятки. Конечно же, предпочтение будет отдано тому устройству, которое стоит 200 долларов, а не тому устройству, которое обойдется в 400-600 долларов США. Если на одном устройстве можно сэкономить 200 у.е., то на 10 устройствах экономия получается внушительная. Особенно здорово, когда можно использовать смартфоны разных производителей, которые доступны в любом ларьке. Когда спектр предлагаемых аппаратов широк, всегда можно выбрать лучшее решение. Торговые представители, которые используют смартфоны компании, не очень жалеют данные устройства. Их роняют, забывают в автомобилях, был случай, даже переехали устройство грузовиком. Конечно же, никто не снимает материальной ответственности с торговых представителей. Но ущерб в 200 долларов – это значительно меньше, чем ущерб в 400 долларов. В общем, чем дешевле аппарат, тем лучше.
  2. КПК должен быть надежным. Наш опыт показывает, что не всегда устройства именитых производителей самые надежные. Причем, надежность мы оцениваем не по отказам единичных устройств, а по опыту эксплуатации десятков устройств в течение 2-3 лет.
  3. Программное обеспечение должно вести себя исключительно надежно в любых условиях. Низкая квалификация пользователей не должна становиться причиной отказов и сбоев. В качестве примера, можно привести участок обмена данными между КПК и компьютером. Во-первых, желательно, чтобы обмен данными производился не по шнуру USB, а по радио. К сожалению, Blue Tooth - технология показала себя абсолютно не пригодной для использования широкими массами торговых представителей. Потери настроек соединения, потери самого соединения, невозможность установить подключение при правильных настройках по непонятным причинам – это тот «букет» проблем, которые возникали постоянно. Пришлось отказаться от blue tooth – подключения и сбрасывать данные исключительно по шнуру. Соответственно, это очередь, задержки по времени. Можно было бы использовать Wi –Fi соединение, но на основной массе устройств с Windows Mobile, производимых в 2006-2009 годах, Wi-Fi технологии не реализованы. В новых устройствах, на новых платформах, Wi –Fi стал практически стандартом, поэтому обмен данными должен производиться исключительно по этой технологии.
  4. Стилус. Об этой маленькой палочке можно рассуждать очень долго. Особенно о том, как ее теряют торговые представители. И какие объяснения за этим следуют. Но еще хуже, когда в качестве стилуса используется шариковая ручка. Экран такого КПК похож на географическую карту с реками и сетью дорог. Поэтому КПК на новой платформе должен иметь только емкостной экран, и соответственно «пальцевый» ввод. Отсутствие пленки на экране, то есть сплошной стеклянный экран, благотворно сказывается как на внешнем виде устройства, так и на его надежности. Резистивные (пленочные) экраны показали себя уязвимыми от царапин и повреждений.


Можно перечислить еще множество критериев, но если кратко, это доступность в продаже, цена и надежность .

Что мы имеем на рынке.

Apple IPhone – устройство выдающееся. Но по критериям цены и доступности в наши требования не укладывается.

Windows Phone 7. Мы следили за данным проектом от Microsoft с самых первых сообщений. После того, как узнали о том, что интерфейс пользователя строится с помощью Microsoft Silverlight, сказали себе, ну ладно. Дело в том, что мы имеем некоторый опыт работы с данной технологией, и она оставила неоднозначное впечатление. Главный вопрос, который возникал – где под нее взять такие вычислительные ресурсы? Когда Microsoft опубликовала аппаратные требования к новой платформе, мы поняли, что программировать классы на нашем любим Visual Basic .Net под мобильную платформу вряд ли придется. Цена на такие устройства меньше чем 500 долларов никак не вырисовывалась. При этом, на момент написания этой статьи доступных устройств на базе Windows Phone 7 в магазинах Украины и России нет. Ну вот и все…

Кто остался? Symbian? Bada? Обе платформы жестко привязаны к производителю. А нужна платформа интернациональная.

Есть тут одна такая…

Называется она Google Android.

Зная напористость Google и его умение делать деньги совсем не там, где от него ожидают, нам на протяжении всего 2010 года казалось, что с этой платформой может получиться что-то интересное.

Примерно в октябре 2010 года мы развернули все необходимые средства разработки для платформы Google Android и стали потихоньку ее изучать. Отсутствие опыта разработки на Java нас не смущало. Это C-подобный язык, а объектное программирование с его наследованием и полиморфизмом, оно везде одинаковое, что на VB.Net, что на C#, что на С++. Немного удивило, что, как и у С++, у классов нет прямой реализации свойств, как, например, у VB, VB.NET или C#. Но это не сильно напрягает. Жить можно. Вообще, сравнение сред разработки Visual Studio 2010 и Eclipse Helios дало интересный опыт. Но это, наверное, тема для отдельной статьи.

Отпраздновали Новый год, и первые вести из-за океана сразу показали – СВЕРШИЛОСЬ. Итак, наша новая мобильная платформа Google Android!

Был выбран и заказан новый телефон Samsung I5500 за 205 долларов, и мы запустили на нем традиционное “Hello world!” После Visual Studio 2008 в связке с Windows Mobile скорость запуска приложения просто потрясающая. Что ж, отлично.

Но встала куча вопросов! Как организовать интерфейс? Как ворочать тысячами товарных наименований и тысячами клиентских записей? Очевидно, что здесь все по другому и платформу нужно изучить тщательно, прежде чем браться за разработку. Возникла идея написать более простое приложение скорее как исследовательское или учебное задание.

Так совпало, что в это время мы узнали о дефиците терминалов сбора данных за доступную цену. Таким образом, мы оказались просто обязаны написать приложение «Терминал сбора данных».

    Это позволило решить сразу несколько задач.
  1. Научиться программировать Android-приложения.
  2. Освоить приемы построения интерфейса таких приложений.
  3. Отработать технологию установки Android-приложений через Android Market.
На данный момент основную работу по созданию приложения можно считать законченной. Система проходит стадию бета-тестирования и примерно с 20 февраля будет доступно для загрузки.

Описание самого приложения ANDRIY.CO Data Terminal можно увидеть во второй части статьи.

Статья включена в следующие темы:

Вверх