Использование nfc в программе

Как пользоваться НФС на Андроид

Уже достаточно давно на Android-устройствах помимо классических функций появилась возможность бесконтактной оплаты с использованием специального NFC-чипа. Данное приспособление можно найти практически в каждом современном смартфоне, однако далеко не все владельцы знают, как правильно пользоваться подобной функцией. По ходу сегодняшней статьи мы постараемся раскрыть все тонкости работы NFC-чипа и методы применения.

NFC на Android

Несмотря на кажущуюся простоту, NFC на Android играет важную роль, сводящуюся, как правило, к бесконтактной оплате покупок с помощью мобильного телефона. При этом в некоторых случаях применение чипа может выходить далеко за указанные рамки, вплоть до передачи файлов в режиме реального времени.

Проверка NFC-чипа

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

ХауТу: Что такое NFC и как платить смартфоном?

Включение модуля передачи данных NFC на телефоне с Android 7

Включение функции

Если смартфон располагает NFC-чипом, для использования потребуется отдельно включить функцию, опять же воспользовавшись классическим приложением «Настройки». Сделать это можно в разделе «Беспроводные сети» или «Подключенные устройства» в зависимости от версии Android и фирменной оболочки. Подробно настоящая тема была раскрыта в другой инструкции по представленной ниже ссылке.

Включение функции NFC в настройках на Android

Многие сторонние приложения для бесконтактной оплаты, представленные нами далее, способны автоматически задействовать функцию NFC. Это стоит учитывать, так как хоть и не значительно, но все же может сэкономить время.

Приложения для NFC

Даже при наличии активированного чипа использование непосредственной самой функции является невозможным без установки и подключения одного из специальных приложений. Лучшим вариантом, как правило, выступает Google Pay, поддерживающий большинство банковских карт, включая Visa и MasterCard, но также существуют и другие варианты. Так или иначе, все актуальные приложения были нами представлены в соответствующем обзоре.

Пример приложения для оплаты телефоном на Android

Зачем смартфону NFC? Что такое NFC и как оно работает?

Настройка оплаты телефоном

Вне зависимости от выбранного варианта на телефоне потребуется применить определенные настройки, напрямую влияющие на возможность бесконтактной оплаты. Особенно это касается Google Pay и Samsung Pay, работающих только в случае привязки пластиковой карты к учетной записи.

Настройка приложения для оплаты телефоном на Android

Многие из банков позволяют сильно упростить процедуру привязки, предоставляя инструменты внутри фирменного приложения. Одним из ярких примеров подобного выступает Сбербанк с одноименной программой.

Настройка бесконтактной оплаты для карты Сбербанка на Android

Бесконтактная оплата

Главная задача NFC-чипа, как мы уже упоминали ранее, заключается в бесконтактной оплате товаров в магазинах с терминалами, поддерживающими соответствующий метод расчета. Кроме того, функция доступна для использования и в банковских отделениях, включая банкоматы, значительно упрощая процедуру обслуживания.

Пример оплаты смартфоном на Android с помощью NFC

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

Передача файлов через Android Beam

На первый взгляд довольно необычным может показаться применение NFC-чипа, изначально нацеленного на бесконтактную оплату с помощью соответствующих терминалов, в качестве средства беспроводной передачи файлов между смартфонами по аналогии с Bluetooth. Однако, несмотря это, подобное вполне возможно и уже часто встречается в лице функции «Android Beam», доступной из системных «Настроек». Более подробно ознакомиться с особенностями настоящей опции вы можете в отдельной статье.

Читайте также:
Service desk как работать в этой программе

Использование функции Android Beam в Настройках на смартфоне

Если говорить вкратце, то с помощью Android Beam можно передавать файлы между двумя смартфонами с поддержкой данной функции и при задействованном NFC-чипе. Такой способ имеет массу достоинств, предоставляя высокий уровень безопасности и внушительную скорость передачи информации, оставляя позади привычный блютуз и прочие виды соединения.

Нами были представлены все особенности работы NFC на Android, включая как бесконтактную оплату, так и беспроводную передачу файлов. В настоящий момент других методов применения опции не существует и в ближайшее время вряд ли появятся.

Источник: lumpics.ru

Как пользоваться NFC в смартфоне: как настроить модуль бесконтактной оплаты

nfc, nfc в смартфоне, nfc в телефоне, nfc модуль, nfc чип, nfc xiaomi

Первый телефон с функцией NFC появился еще в 2006 (!) году, и это была Nokia 6131. Тогда эта функция не имела успеха, зато теперь мы по достоинству оценили ее возможности. Бесконтактная оплата, передача данных — лишь малая часть того, на что способен NFC, но давайте разберемся, что это такое.

Но перед этим минутка рекламы. 🙂 На нашем сайте вы всегда сможете найти новые модели смартфонов и другой полезной техники по низкой цене. Мы работаем с 2013 года, и гарантия нашей работы — более 7000 отзывов от покупателей на Яндекс.Маркете.

Аббревиатура NFC расшифровывается, как Near Field Communication, что в переводе означает “ближняя бесконтактная связь”. NFC — это модуль в гаджете, который помогает передавать данные с устройства на устройство на близком расстоянии, до 10 сантиметров. Свою популярность этот модуль получил в последние несколько лет, но если раньше им оснащались лишь флагманы, то теперь NFC поддерживается всеми смартфонами, если это не старая или слишком бюджетная модель.

Как работает NFC

NFC-чип довольно компактный, легко помещается в корпусе смартфона или любого другого гаджета. Работает он за счет индукции магнитного поля и может действовать в двух режимах — активном и пассивном. В активном режиме оба участника взаимодействия должны иметь собственный источник питания, а значит, собственное магнитное поле. В пассивном режиме достаточно одного такого устройства, второе будет работать за счет магнитного поля первого.

Как включить и настроить NFC

Первым делом, необходимо убедиться, что в смартфон установлен NFC-модуль. Обычно эта информация есть на самом смартфоне — производители делают отметку на тыльной стороне устройства. Для большей уверенности можно поискать в самом устройстве: «Настройки» — «Беспроводные сети» или «Подключенные устройства» — «Еще» — «NFC».

Если последний пункт есть в списке — ваш смартфон оснащен этим модулем. Активируем его. Чтобы каждый раз не заходить в Настройки, можно активировать модуль в шторке уведомлений.

1.jpg

Дальше нужно установить приложение, с помощью которого будут программироваться метки, карты и сам смартфон. Для бесконтактной оплаты это Google Pay у андроидов, Apple Pay и Samsung Pay. Важно, чтобы и банковские карты, которые вы хотите привязать к устройству, тоже поддерживали бесконтактную оплату, иначе во время привязывания будет появляться ошибка.

Для программирования меток существуют разные программы, их можно найти в магазинах приложений Google Play и App Store. Например, NFC Tools.

Как пользоваться NFC

Оплата покупок с NFC

Перед первой оплатой надо привязать к устройству банковскую карту. Для этого нужно скачать одно из приложений, о которых мы написали немного выше. По подсказкам в самом приложении вы вводите номер карты, срок ее действия, CVV-код, а затем подтверждаете свои действия кодом SMS-сообщения. Оно придет на номер, к которому привязана карта. Если введенных карт будет несколько — перед оплатой необходимо выбирать нужную карту, если она не установлена у вас по умолчанию.

Следующий шаг — установка пароля, графического ключа или отпечатка пальца для разблокировки экрана, если до этого у вашего устройства был незащищенный доступ к устройству. Это обязательное условие Pay-приложений, нужное для защиты данных банковских карт.

Читайте также:
Как удалить установленные программы в линукс

Для оплаты при помощи NFC достаточно приложить смартфон тыльной стороной к терминалу, при этом выведя его из режима ожидания, и подтвердить свои действия отпечатком пальца, паролем и графическим ключом. Приходит оповещение, покупка оплачена, вы великолепны.

2.jpg

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

Передача файлов и данных через NFC

NFC, как и Bluetooth, используется для передачи данных с устройства на устройство, но скорость NFC намного ниже, поэтому его используют только для передачи карточек контакта, небольших заметок. Для передачи нужна вспомогательная технология Android Beam, по умолчанию установленная аппарат.

9.jpg

Чтобы передать файлы заходим в «Настройки» — «Беспроводные сети» — «NFC» и ставим галочку напротив «Разрешить обмен данными при совмещении телефона с другим устройством». Если Android Beam не включен — включаем вручную. Запускаем файл, который нужно переслать и прикладываем друг к другу задние панели гаджетов, дожидаемся окна с предложением отправить файл и подтверждаем отправку.

4.jpg

NFC-метки

NFC модуль используется не только для оплаты покупок или передачи файлов — с ним можно облегчить свою повседневную жизнь. Достаточно приобрести специальные метки-стикеры, которые продаются в любом магазине техники, настроить их с помощью приложения на определенные действия. Подробнее вы можете прочитать об этом в нашей статье: Как пользоваться NFC: модуль в смартфоне и лайфхаки.

5.jpg

Безопасность

Бесконтактные оплаты, отсутствие лишних движений — это хорошо, но что насчет безопасности? Вполне логичный вопрос, не украдут ли данные банковской карты или не перехватят ли секретную заметку? Ответ — нет, не перехватят и не украдут.

Радиус действия NFC очень мал, всего 10 сантиметров. На таком расстоянии сложно незаметно взломать систему и проникнуть в гаджет. У функции Bluetooth радиус достигает десятков метров, и здесь шанс чужого вмешательства куда выше.

При оплате покупок через терминал никакая информация о карте не передается. Номер карты шифруется в специальный токен — случайно сгенерированный идентификатор, который и будет выступать в качестве главных реквизитов при оплате. Плюс, платеж проходит только после вашего подтверждения — приложенного отпечатка пальца или введенного пароля. Так что злоумышленник не сможет воспользоваться вашей картой, даже если у него будет ваш смартфон.

6.png

Заключение

Потенциал модуля NFC огромен, но пока что мы используем лишь его малую часть — для совершения покупок и передачи данных. Со временем он станет частью нашей жизни, как когда-то ею стал и смартфон, значительно упростит ее и сделает комфортнее.

Лайк — лучшее спасибо! 🙂

А вы пользуетесь NFC? Если нет — почему? Пишите в комментариях!

Источник: sibdroid.ru

Разработка NFC приложений для Android

NFC (near field communication) – стандартизированная технология обмена данными на короткие расстояния, позволяющая осуществлять взаимодействия между двумя электронными устройствами простым и интуитивно понятным способом. Например, с помощью оснащенного NFC смартфона вы можете делать покупки, раздавать визитные карты, скачивать купоны на скидки и так далее. Множество новых применений для NFC будет найдено в ближайшее время.
Эта статья описывает технологии, использующие NFC и способы их применения на сегодняшний день. Также показано, как использовать NFC в Android приложениях и, наконец, приведены два примера NFC приложений с исходными кодами.

Архитектура технологии NFC

NFC основана на RFID технологии с частотой 13.56 МГц и рабочей дистанцией до 10 см. Скорость обмена данными составляет до 424 кб/сек. По сравнению с другими коммуникационными технологиями, основным преимуществом NFC является быстрота и простота использования. На рисунке ниже видно расположение NFC среди других коммуникационных технологий.

Технология NFC имеет три режима: эмуляция NFC-карты, пиринговый режим и режим чтения/записи.

Читайте также:
Как вынести ярлык программы

В режиме эмуляции карты NFC представляет собой аналог чипованной RFID карты со своим модулем безопасности, позволяющим защищать процесс покупки. В пиринговом режиме вы можете делиться информацией, например визитной карточкой, с другими NFC устройствами. В также можете устанавливать WiFi или Bluetooth соединения посредством NFC для передачи больших объемов данных. Режим чтения/записи предназначен для чтения или изменения NFC меток с помощью NFC устройств.
Каждый режим более подробно описан ниже.

Режим эмуляции NFC карты

NFC модуль обычно состоит из двух частей: NFC контроллера и элемента безопасности (ЭБ). NFC контроллер отвечает за коммуникации, ЭБ – за шифрацию и дешифрацию чувствительной к взлому информации.

ЭБ подключается к NFC контроллеру посредством шины SWP (Single Wire Protocol) или DCLB (Digital Contactless Bridge). Стандарты NFC определяют логический интерфейс между хостом и контроллером, позволяя им взаимодействовать через RF-поле. ЭБ реализуется с помощью встроенного приложения или компонента ОС.

Существует три варианта реализации ЭБ: можно встроить его в SIM-карту, SD-карту или в NFC чип.

Операторы связи, такие как CMCC (China Mobile Communication Corporation), Vodafone или AT …… >else < …… write(message.getText().toString(),mytag); …… >private void write(String text, Tag tag) throws IOException, FormatException < NdefRecord[] records = < createRecord(text) >; NdefMessage message = new NdefMessage(records); // Get an instance of Ndef for the tag. Ndef ndef = Ndef.get(tag); // Enable I/O ndef.connect(); // Write the message ndef.writeNdefMessage(message); // Close the connection ndef.close(); >

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

Пример 2. Разработка NFC-приложения, использующего карты MifareClassic

В этом примере для чтения мы будем использовать карты MifareClassic и соответствующий им тип метки. Карты MifareClassic широко используются для различных нужд, таких как идентификация человека, автобусный билет и т.д. В традиционной карте MifareClassic область хранения разбита на 16 зон, в каждой зоне 4 блока, и каждый блок может хранить 16 байт данных.
Последний блок в зоне называется трейлером и используется обычно для хранения локального ключа чтения/записи. Он содержит два ключа, А и В, 6 байт длиной каждый, по умолчанию забитые 00 или FF, в зависимости от значения MifareClassic.KEY_DEFAULT.
Для записи на карту Mifare вы, прежде всего, должны иметь корректное значение ключа (что играет защитную роль), а также успешно пройти аутентификацию.

android.nfc.tech.MifareClassic

Пример того, как читать карту MifareClassic:

private void processIntent(Intent intent) < Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG); for (String tech : tagFromIntent.getTechList()) < System.out.println(tech); >boolean auth = false; MifareClassic mfc = MifareClassic.get(tagFromIntent); try < String metaInfo = «»; //Enable I/O operations to the tag from this TagTechnology object. mfc.connect(); int type = mfc.getType(); int sectorCount = mfc.getSectorCount(); String typeS = «»; switch (type) < case MifareClassic.TYPE_CLASSIC: typeS = «TYPE_CLASSIC»; break; case MifareClassic.TYPE_PLUS: typeS = «TYPE_PLUS»; break; case MifareClassic.TYPE_PRO: typeS = «TYPE_PRO»; break; case MifareClassic.TYPE_UNKNOWN: typeS = «TYPE_UNKNOWN»; break; >metaInfo += «Card type:» + typeS + «n with» + sectorCount + » Sectorsn, » + mfc.getBlockCount() + » BlocksnStorage Space: » + mfc.getSize() + «Bn»; for (int j = 0; j < sectorCount; j++) < //Authenticate a sector with key A. auth = mfc.authenticateSectorWithKeyA(j, MifareClassic.KEY_DEFAULT); int bCount; int bIndex; if (auth) < metaInfo += «Sector » + j + «: Verified successfullyn»; bCount = mfc.getBlockCountInSector(j); bIndex = mfc.sectorToBlock(j); for (int i = 0; i < bCount; i++) < byte[] data = mfc.readBlock(bIndex); metaInfo += «Block » + bIndex + » : » + bytesToHexString(data) + «n»; bIndex++; >> else < metaInfo += «Sector » + j + «: Verified failuren»; >> promt.setText(metaInfo); > catch (Exception e) < e.printStackTrace(); >>

Об авторах

Songyue Wang и Liang Zhang — инженеры в Intel Software and Service Group, разрабатывающие мобильные приложения, в том числе и для Android, и оптимизирующие их под платформу х86.

  • nfc
  • android development
  • Блог компании Intel
  • Разработка под Android

Источник: habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru