2

我正在为 Android 开发一个 nfc 应用程序,并且想处理一个可以支持 NFC-V 或 NFC-A 协议的标签。

问题是,当我用手机(Galaxy S2 plus,运行 android 4.1.2)接近标签时,它 90% 的时间检测到 NFC-V 协议,10% 的时间检测到 NFC-A 协议。

我想做的是强制我的手机只关注两种协议之一。这意味着我想在触摸标签之前将手机配置为仅收听 NFC-V 协议。

这可能吗?

4

2 回答 2

1

不幸的是,这是不可能的。

NFC 硬件对所有不同的协议进行时间复用。如果您将标签放在天线附近,并且 NFC 芯片当前正在感应 NFC-V,您将获得 NFC-V。与 NFC-A 相同。

于 2013-04-15T08:03:51.110 回答
0

从 Android 4.4 开始,这可以使用 Android NFC reader-mode API

NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this);
nfcAdapter.enableReaderMode(this, this, NfcAdapter.FLAG_READER_NFC_V, null);

然后,您可以Tag通过 reader-callback 检索对象:

public void onTagDiscovered (Tag tag) {
    ...
}
于 2015-04-21T07:40:39.943 回答