"不支持NFC标签类型"信息

时间:2016-06-09 04:08:46

标签: android tags nfc samsung-mobile mifare

我有一个可以读取和写入NFC标签的应用程序。我在Galaxy Note 3上测试了我的应用程序,它工作正常。但是当我在Note 5和Galaxy S6上进行测试时会弹出一条消息,说明" NFC标签类型不受支持"。

这是我的应用程序的错误还是我的标签不支持这些设备?

我的标签类型是ISO 14443A标准。

3 个答案:

答案 0 :(得分:16)

您正在使用MIFARE Classic标签。虽然这些标签部分基于ISO / IEC 14443-3A(或实际上反过来),但它们使用专有加密算法和专有框架。由于恩智浦(MIFARE Classic技术的所有者)似乎并未将MIFARE Classic读卡器技术授权给其他芯片制造商,因此只有使用恩智浦芯片组的NFC设备才能访问MIFARE Classic标签内存。

这通常只意味着您无法通过没有恩智浦NFC芯片组的设备访问MIFARE Classic标签上的数据。通常,您仍然可以通过Android API访问ISO / IEC 14443-3A防冲突标识符(UID)。不幸的是,三星决定通过显示消息“不支持NFC标签类型”来完全阻止其设备上的MIFARE Classic。因此,您甚至无法从受影响的三星设备上的应用程序中检测到这些标签。请参阅Hide "NFC Tag type not supported" error on Samsung Galaxy devices了解解决该限制的可能方法。

对于您的特定设备,Samsung Note 3包含NXP PN544 NFC控制器,因此支持MIFARE Classic。三星Galaxy S6包含三星S3FWRN5P NFC控制器(Note 5可能还包含三星的NFC控制器),因此,他们不支持(实际上完全阻止)MIFARE Classic。

答案 1 :(得分:1)

您的代码似乎是Mifare Classic:https://en.wikipedia.org/wiki/MIFARE#MIFARE_Classic

Mifare经典:

  

它使用NXP专有安全协议(Crypto-1)   身份验证和加密。这意味着只有具有NXP NFC的设备   控制器芯片可以读取或写入这些标签。

答案 2 :(得分:0)

我确认我的带有android 7.0的三星S7显示“不兼容”消息,但它可以正确读取mifare标签(只是ID),但只能使用恩智浦特定的应用程序。 S7还支持HCE模拟卡片,但我还没有找到一个可以复制卡片ID的应用程序。