...

пятница, 15 мая 2015 г.

NFC + «Тройка» = «Мой проездной»

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

Работает это следующим образом – если в вашем Android-смартфоне есть NFC-модуль (а здесь заранее стоит отметить тот факт, что не все смартфоны с поддержкой NFC аппаратно поддерживают бесконтактные чипы, использующиеся в «Тройке» – список проверенных устройств будет ниже), то с помощью «Моего проездного» вы сможете купить и записать на «Тройку» любой билет действующего тарифного меню: «Единый», «ТАТ» на 1-60 поездок, «90 минут» или проездной на 30, 90 и 365 дней.

Естественно – все покупки не облагаются никакой комиссией.

Помимо этого можно с банковской карты напрямую пополнить баланс Электронного кошелька, а также прочитать текущий баланс билетов ГУП «Мосгортранс» (наземный транспорт) и ГУП «Московский метрополитен» (метро), которые записаны на вашу «Тройку».

Само приложение, уже доступное в магазине Google Play, является дальнейшим развитием «Единой платежной платформы» Банка Москвы. Уже сейчас в эту экосистему входят приложения «БМmobile.Кошелёк», «Переводы» и «Квартплата», а также городское приложение «Парковки Москвы». При этом используется единая учётная запись пользователя для всех приложений, что удобно не только в том случае, если вы являетесь клиентом непосредственно банка.

Поэтому и регистрация требуется только в том случае, если у вас ещё нет учётной записи в одном из вышеупомянутых приложений. А сделав её один раз, вы сможете использовать привычные вам логин и пароль в других приложениях Банка Москвы. Согласитесь – это удобно.

При решении задач, связанных с разработкой интеграционного слоя между смартфоном и бесконтактной картой, нами использовались стандартные системные библиотеки, лицензированные владельцем технологии – компанией «NXP Semiconductors». Основной проблемой стало собственно определение типа NFC-контроллера.

Изначально предполагалось использовать стандартные функции, позволяющие при старте аппликации определять – поддерживает ли установленный NFC-контроллер взаимодействие с картами стандарта «Mifare Classic» или нет. В итоге пришлось модифицировать уже согласованный дизайн, поскольку выяснилось, что довольно большой процент бюджетных китайских смартфонов, оборудованных NFC-контроллером, всё-таки прекрасно поддерживает взаимодействие с «Тройкой», но при этом системная функция возвращала совершенно иной ответ.

Вообще, читая отзывы на маркете, начинаешь понимать несущественные на первый взгляд упущения. Так, например, многие думают, что бумажные билеты и карта «Тройка» – это одно и то же, и сильно удивляются, почему их карту приложение «Яндекс.Метро» читает, а приложение «Мой проездной» – нет. На самом деле, это совсем не так, «бумажные» билеты реализованы на носителях стандарта «Mifare Ultralight», а карта «Тройка» (на самом деле многоразовый носитель) использует стандарт «Mifare Classic», а это две большие разницы. Мы, кстати, в ближайших релизах поддержим чтение баланса «бумажных» билетов.

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

Например, если чехол вашего смартфона поддерживает бесконтактную зарядку, то вероятность того, что даже при «правильном» NFC-контроллере будут читаться бесконтактные карты, не сильно высока. Дополнительные проблемы – это так называемые дуальные карты (т.е. карты, поддерживающие работу по контакту и бесконтакту), данные карты не только требовательны к питанию, но и зачастую требуют реализации для них отдельных алгоритмов взаимодействия.

Покупка поездок и пополнение «Тройки»

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

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.

Комментариев нет:

Отправить комментарий