2012-03-26 3 views
0

Я пытаюсь сделать приложение для Android, которое взаимодействует с нестандартным тегом ISO15693 (NFC-V).NFC-тег не обнаружен

Тег нестандартен, потому что он не выполняет команду ISO «Inventory». Но другие команды могут использоваться с NfcV «transceive». Android 4.0.1 не автоматически обнаруживает этот тег и не отправляет намерение (с объектом «Tag» в своей полезной нагрузке) в мое приложение. Это не проблема. Я знаю, что там есть тег, и я могу запустить приложение «вручную».

Моя проблема в том, что мне нужен объект «Тег» для использования метода «трансивера» для связи. Этот объект «Тег» обычно генерируется операционной системой. Чтобы создать собственный объект «Tag», мне понадобится «serviceHandle» (целое число, вероятно, похожее на дескриптор файла) и «tagService» (это ссылка на драйвер устройства или функцию операционной системы?). Я не мог найти способ получить этих участников! Мои вопросы:

Как я могу построить объект «Tag» для использования «приемопередатчика» NfcV?

альтернативно:

Есть ли способ, чтобы получить контроль над NfcAdapter, чтобы включить ISO15693 (NfcV) и Transceive сырых команд?

ответ

1

Чтобы обнаружить теги NfcV, чип NFC на устройстве Android отправляет команду инвентаризации ISO15693. Когда тег отвечает на это, стек программного обеспечения NFC создаст дескриптор тега, который NFC Service в Android использует для создания объекта Tag. Таким образом, вы не можете создать объект Tag без фактического тега, известного стеку программ NFC.

Поддержка команды Inventory обязательна в соответствии с ISO15693. Поэтому я пришел к выводу, что ваш тег не совместим с ISO15693, и к сожалению, он не может поддерживаться Android NFC API.

+0

Большое спасибо за ваш ответ! –

Смежные вопросы