Android NFC с USB-NFC-считывателем

У меня есть планшет с Android 4.2. Этот планшет не имеет оборудования NFC. Однако у меня есть внешний USB-ридер: ACR 1252U, поставляемый с библиотекой Android. Эта библиотека, к сожалению, дает мне только базовую функциональность - чтение и запись тегов. Хотя это работает довольно хорошо, этого недостаточно...

Потому что для моего приложения мне нужно передавать файлы с моего планшета Android 4.2 на другие устройства NFC (смартфоны Android). Поэтому мне нужно перевести считыватель NFC в одноранговый режим, который он поддерживает. Но как я могу добиться этого с моей настройкой? Действительно существует SDK для этой программы чтения, но только для Windows.

  • Возможно ли как-то использовать встроенный в NFC-функциях с Android с помощью внешнего USB-ридера?
  • Есть ли для этого ридера другая библиотека, поддерживающая одноранговую связь с другими NFC-устройствами?
  • Есть ли другое оборудование, которое я могу использовать для этой работы?

Изменить: связанный вопрос НЕ решает мою проблему :

  1. Это 3,5 года. Можно подумать, что за это время многое изменилось.
  2. Ответ на этот вопрос (= используйте библиотеку Android ACS) является частью моего собственного вопроса... Так что это не может быть ответом.

person Michael B    schedule 03.11.2015    source источник


Ответы (1)


Возможно ли как-то использовать встроенные NFC-функции из Android с внешним USB-ридером?

Нет, это невозможно. Если ваши устройства Android не поставляются с NFC, у них просто нет встроенной функции NFC (даже со стороны программного обеспечения). Android NFC API — это, по сути, пустая реализация-заглушка, которая ничего не делает на таком устройстве.

Есть ли для этого ридера другая библиотека, поддерживающая одноранговую связь с другими NFC-устройствами?

Библиотека от ACS не мешает вам получить доступ к одноранговым возможностям ридера, поэтому я не понимаю, почему вы хотите использовать другую библиотеку. См. раздел 5.9 спецификации API. о том, как использовать одноранговые возможности читателя.

Мне нужно передать файлы с моего планшета Android 4.2 на другие устройства Android NFC

Основываясь на этом запросе, я предполагаю, что вы хотите использовать что-то вроде Android Beam, чтобы установить какой-то быстрый внеполосный канал через NFC, а затем передавать (большие?) файлы по этому внеполосному каналу (например, WiFi или Bluetooth). .

В этом случае вам потребуется повторно реализовать стек Android Beam (режим одноранговой связи NFC + LLCP + простой протокол обмена NDEF + установление внеполосного канала связи + передача файла по этому каналу)

person Michael Roland    schedule 07.11.2015
comment
Спасибо! Моя цель — отправить данные на другой телефон Android, но без использования Bluetooth или WiFi. Поскольку объем данных очень мал (~20 КБ), а скорость передачи NFC составляет 424 кбит/с (=53 КБ/с), это теоретически возможно, что вы думаете? - person Michael B; 09.11.2015
comment
Да, это должно быть возможно. Я предлагаю вам проверить, поддерживает ли ридер режим эмуляции карты (тогда второе устройство может просто получить к нему доступ, как если бы это была метка NFC). В противном случае вы можете использовать устройство чтения в режиме чтения и использовать режим HCE на втором устройстве. - person Michael Roland; 09.11.2015
comment
Я последовал твоему совету и проверил режим эмуляции ридеров. К сожалению, я не могу правильно записать данные в эмулируемый тег. Можешь и мне помочь с этим вопросом? ;) stackoverflow. ком/вопросы/33695891/ - person Michael B; 16.11.2015