有没有人知道在Android NFC中,一部手机如何检测其他NFC设备的类型,包括标签,P2P中的另一部手机或托管模拟器模式中的其他手机?在代码中,消息都来自NdefMessage,在任何地方都声明消息是从哪种设备发送的?
答案 0 :(得分:1)
这取决于您在应用中收到NdefMessage的方式。例如,如果您通过ACTION_NDEF_DISCOVERED
意图收到它,则会有一个强制性意图EXTRA_TAG
。使用额外传递的Tag
对象,您可以估计用于传递NDEF消息的设备类型。
此方法应允许您清楚地区分通过点对点模式和NFC标签/智能卡/卡仿真设备接收的消息。实际NFC标签(或非接触式智能卡)与卡仿真模式中的设备之间的区别肯定会更加困难,并且肯定需要一些广泛的指纹识别(例如,可以区分模拟NfcA并且还支持点对点模式的设备从NfcA标签到其SAK字节,通常表示支持NFCIP-1。