Одновременное чтение нескольких тегов NFC в Android

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

Из прочтения спецификации NFC (ISO / IEC 14443-3) для тегов, которые я использую (Mifare Classic), я должен иметь возможность отправить тегу команду «остановить», что приведет к тому, что он перестанет отвечать, и позволит мне прочитать следующий тег в поле. Android не поддерживает команду halt напрямую ни в одном из подклассов TagTechnology , поэтому я попытался отправить ее напрямую, используя transceive (new byte [] {0x50, 0x00}) . Это вызывает исключение IOException с сообщением «ошибка передачи»

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

Можно ли одновременно взаимодействовать с несколькими тегами в поле? Что я делаю не так?

18
задан Nick Johnson 13 March 2011 в 05:32
поделиться