Тег NFC не обнаружен - PullRequest
0 голосов
/ 26 марта 2012

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

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

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

Как я могу сконструировать объект "Tag", чтобы использовать "transceive" NfcV?

или

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

1 Ответ

1 голос
/ 26 марта 2012

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

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

...