我正在尝试将 NDEF 消息中的 URL 从我的计算机和 ACR 122 发送到电话。
为了实现这一点,我使用了 SNEP。问题是它与 Android 和 Blackberry 完美兼容,但不适用于任何 Windows Phone。
这些是我使用 java 库 Smartcardio 发送的命令,以及我从手机(android 或 Windows)得到的响应
命令1:(将PN532配置为目标)FF 00 00 00 2D D4 8C 00 08 00 12 34 56 40 01 FE0100000000000000000000000000FFFF01FE01000000000000000646666D01011000
响应安卓:D5 8D 25 1E D4 00 D5 65 D7 84 0E 59 F9 CF B2 BA 00 00 00 32 46 66 6D 01 01 11 03 02 00 13 04 01 96 90 00
响应 Windows Phone : D5 8D 05 22 D4 00 C2 65 AD 78 F4 3D 81 F8 72 8F 00 00 00 32 46 66 6D 01 01 11 02 02 03 80 03 02 00 01 04 01 64 90 00
命令 2:(tg 获取数据)FF00000002 D486
响应安卓:D5870000009000
响应 WP : D5870000009000
命令 3:(tg 设置数据,ndef 带有“urn:nfc:sn:snep”)FF00000015 D48E 0520060F 75726E3A6E66633A736E3A736E6570
响应安卓:D58F009000
响应 WP : D58F009000
命令 4:(tg 获取数据)FF00000002 D486
响应安卓:D587 000000 9000
响应 WP : D587 00 05 20 02 02 03 80 050105060F75726E3A6E66633A736E3A736E6570 9000
命令5:(tg设置数据)FF00000004D48E 0000
响应安卓:D5 8F 00 9000
回复 WP : D5 8F 00 9000
命令 6:(tg 获取数据)FF00000002 D486
响应安卓:D587 00 8184 9000
回复 WP : D587 00 8184 02020380050105 9000
命令 7:(tg 设置数据,ndef 与 url “journaldugeek.com”)FF00000021 D48E 132000100200000016 D1 01 12 55 01 6A6F75726E616C64756765656B2E636F6D
响应安卓:D58F 00 9000
响应 WP : D58F 00 9000
命令 8:(tg 获取数据)FF00000002D486
响应安卓:D587 00 83 44 01 9000
回复 WP : D587 00 83 44 01 9000
命令 9:(tg 设置数据)FF00000004D48E0000
响应安卓:D58F009000
响应 WP : D58F009000
命令 10:(tg 获取数据)FF00000002D486
响应安卓:D587 00830401108100000000 9000
回复 WP : D587 00830401108100000000 9000
命令 11:(tg 设置数据)FF00000005 D48E 136001
响应安卓:D58F009000
响应 WP : D58F009000
命令 12:(tg 获取数据)FF00000002D486
响应安卓:D5870000009000
响应 WP : D5870000009000
命令 13:断开连接?FF00000004D48E1160
响应安卓:D58F009000
响应 WP : D58F009000
命令 14:断开连接?FF00000002D486
响应安卓:D587 0081C400 9000
响应 WP : D587 0081C400 9000
您可以看到,对于 Android 和 Windows Phone,只有命令 6 不同,但其他命令相同。WP 基本上会发送一条 OK 消息,但手机上的浏览器中不会显示 url。有谁知道为什么,并且知道是否有另一种方法可以使用 APDU 命令执行 SNEP,以便它适用于 Android、WP 和 Blackberry?