Может ли телефон Android NFC действовать как метка NFC?

101

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

Спасибо за вашу помощь.

Джошуа Партоги
источник

Ответы:

32

На данный момент я бы ответил «нет» или «с трудом», но это может измениться со временем по мере развития Android NFC API.

Есть три режима взаимодействия NFC:

  1. Читатель-писатель: телефон считывает теги и записывает в них. Это не эмуляция карты вместо устройства чтения / записи NFC. Следовательно, вы не можете эмулировать тег в этом режиме.

  2. Одноранговая связь: телефон может читать и передавать сообщения ndef. Если считыватель тегов поддерживает одноранговый режим, тогда телефон может действовать как тег. Однако я не уверен, использует ли Android свой собственный протокол поверх протокола LLCP (протокол логической связи NFC), который затем помешал бы большинству читателей рассматривать телефон как тег nfc.

  3. Режим эмуляции карты: телефон использует защищенный элемент для имитации смарт-карты или другого бесконтактного устройства. Я не уверен, запущен ли он еще, но может быть многообещающим. Однако использование защищенного элемента может потребовать от поставщика оборудования или другого лица проверки вашего приложения / предоставления ему разрешений на доступ к защищенному элементу. Это не так просто, как создать обычное приложение NFC для Android.

Подробнее здесь: http://www.mail-archive.com/android-developers@googlegroups.com/msg152222.html

Возникает настоящий вопрос: зачем вы пытаетесь имитировать простой старый тег NFC? Есть какое-то приложение, о котором я не думаю? Обычно вам нужно сымитировать что-то вроде транспортной карты, ключа доступа или кредитной карты, для чего потребуется элемент безопасности (я думаю, но не уверен).

Сделай что нибудь
источник
Хорошо. Google просто анонсирует google.com/wallet сегодня. В этом случае не будет ли телефон действовать как метка?
Джошуа Партоги
1
Как отметил @ erich-douglass выше: не обязательно. если терминал чтения является одноранговым, он не должен действовать как тег.
denbec
как указано выше, вы можете писать в устройство чтения с телефона, используя поддержку NDEF push и peer to peer в Android 2.3+, но вам нужно убедиться, что код считывателя является одноранговым. (должен быть телефон с чипом NFC, например, Galaxy Nexus, Nexus S.)
gamozzii
Проблема в том, что в настоящее время большинство считывающих устройств NFC используют пассивные метки. Гораздо сложнее поддерживать активные обмены LLCP и, конечно, по-прежнему поддерживать пассивное считывание карт. Это возможно, но я еще не слышал о варианте оплаты, реализованном с помощью LLCP ...
AerandiR
11
Это устарело. Android 4.4 имеет эмуляцию карты на основе хоста, которая позволяет именно это: developer.android.com/guide/topics/connectivity/nfc/hce.html
Trevor Johns,
17

Можем ли мы сделать Android NFC в качестве метки, с которой считыватель NFC будет получать данные?

Nexus S поддерживает режим одноранговой сети, который, как следует из названия, заставляет один телефон действовать как тег, который может прочитать другой телефон. В этом году была действительно хорошая сессия Google I / O по NFC. Я бы порекомендовал посмотреть его, если вас вообще интересует NFC.

Эрих Дуглас
источник
Спасибо. Это дает мне понять. Но может ли считыватель NFC читать с телефона?
Джошуа Партоги
@jpartogi Я не совсем уверен, но думаю, что читатель должен явно поддерживать одноранговый режим, чтобы он работал.
Эрих Дуглас
Одноранговый режим - это когда оба телефона или устройства действуют как считыватели. Информация не столько читается, сколько перемещается (записывается) туда и обратно.
Бен Уорд,
9

Да, ты можешь. Android kitkat усиливает эту функциональность здесь

iglen_
источник
3

Читайте здесь: http://groups.google.com/group/android-developers/browse_thread/thread/d5fc35a9f16aa467/dec4843abd73d9e9%3Flnk%3Dgst%26q%3Dsecure%2Belement%2Bdiff%2527s%23dec489eabe

Я сам этого не проверял, но похоже, что людям снова удалось включить скрытый код в Android. Кажется, они могут имитировать карту Mifare Classic (iso-14443). Скоро сам попробую, выглядит очень интересно.

Если вы хотите сделать это для коммерческого / бесплатного приложения, у вас будут проблемы, ваши пользователи не захотят менять свое ядро ​​для поддержки вашего приложения.

Обновление: есть простой трюк, чтобы заставить ваш телефон имитировать билет:
вы можете получить NFC-наклейку и вставить ее или на телефон. Таким образом, вы можете читать и писать его в любое время, и другие устройства также могут читать и записывать его.
Это просто идея, которую я, конечно, никогда не видел, чтобы она использовалась;)

Джон
источник
Мы попробовали трюк с эмуляцией тегов NFC на iPhone с помощью iCarte. Это может сработать ... но мы решили отменить его, так как он действительно непригоден ...
STeN
2

Да, взгляните на NDEF Push в NFCManager - с Android 4 теперь вы даже можете создать NDEFMessage для отправки на активное устройство во время взаимодействия.

Свен Хейгес
источник
1
Это ведь режим p2p? Не обязательная эмуляция тегов на форуме NFC.
STeN
2

В сеансе google io про NFC, раздел qa. Возник такой вопрос:

эмуляция карты? Отсутствие поддержки API для эмуляции карты Отсутствие согласованного пользовательского интерфейса при эмуляции карты и отсутствие убедительной истории

Джейсон
источник
Но опять же - причина, по которой эмуляция карты «не разрешена», заключается в том, что обычно необходимо использовать защищенный элемент, но для тегов NFC нет безопасности (на самом деле они НЕ МОГУТ иметь). Это устраняет необходимость в защищенном элементе, и можно было бы эмулировать его с помощью кода приложения.
STeN
1

Если вы имеете в виду заставить устройство NFC с питанием притвориться пассивным (например, тег) ... не уверен, насколько хорошо оно работает, но приложение для Android NFCClassic намеревается записывать содержимое тега, а затем разрешать тегу быть активированным и, похоже, скопированный тег на считыватели NFC. Создает библиотеку записанных тегов.

мобикодер
источник
1

Да! вы можете просто скачать это приложение!

Скачать приложение

И если вы хотите узнать, как использовать это приложение, посмотрите это видео Как использовать инструменты NFC для эмуляции NFC в качестве приложения для тегов

Спасибо! Отметьте мой ответ, если он вам поможет!

Абдул Ханан
источник
0

Для технологии NFC это просто. Для Google он не будет поддерживать его в качестве кошелька Google.

xding
источник
0

Нет, не сейчас. Google указал на Google IO 2011, что эмуляция карты не поддерживается и не будет поддерживаться некоторое время. Основная (и простая для понимания) проблема: какое приложение должно иметь право на телефоне для эмуляции смарт-карты?

Denbec
источник
Правильный способ сделать - иметь возможность для IC принимать информацию от каждой информации по запросу ...
Обмерк Кронен
0

Вы определенно можете заставить телефон Android писать в считыватель тегов с помощью функции NDEFPush в одноранговой поддержке, но вам нужно будет написать код на стороне считывателя тегов, чтобы также использовать одноранговую связь (llcp) .

гамоцци
источник
0

Да, вы можете, это одноранговый режим

Одноранговый режим


Двунаправленное P2P-соединение для обмена данными между устройствами

–Взаимодействия, инициируемые близостью

–Nexus S: устройства нужно размещать вплотную

Пример приложений

–Обмен vCard

–Передача билетов и оплата P2P

–Распространение веб-страниц, Youtube-видео-обмен

–Передача приложений

Ранджит Субраманиам
источник
0

Можно заставить устройство Android вести себя как тег NFC. Такое поведение называется эмуляцией карты .

  • Эмуляция карты может быть основана на хосте (HCE) или на основе защищенных элементов (CE).
  • В HCE приложение, работающее на основном процессоре Android, реагирует на читателя. Итак, телефон должен быть включен.
  • В CE апплет, находящийся в элементе Secure, отвечает читателю. Здесь достаточно, чтобы контроллер NFC был запитан, а остальная часть устройства приостановлена.
  • Один из этих или оба подхода могут быть активны одновременно.
    Таблица маршрутизации указывает контроллеру NFC, куда направлять команды Reader.
Падманабха V
источник
Можете предоставить ссылки или варианты использования?
AbhinayMe