万汇NFC

远程 NFC 安全连接系统 · 版本读取中…

系统拓扑
💳 测试卡
⇄
📱 读卡端
⇄
🖥 中继服务器
⇄
📱 POS端
⇄
🏬 POS机

两端之间只传 APDU 字节流,经 WebSocket 隧道实时接力。

① 打开读卡端
贴卡并保持 → 读卡端响一声=可贴 POS → 开始后滴滴滴三声=保持贴住
② 打开 POS端
等三条件全绿再发起交易 → 先贴 POS 再贴卡会超时
③ 打开监控台
旁观视角:实时观看两端状态、APDU 流量与单碰卡阶段耗时
真机双端 App 安装(3 步) (当前 版本读取中…)
①
下载安装
下载 读卡端 最新版(wanhui-reader.apk)
下载 买手端 最新版(wanhui-pos.apk)
APK 文件名带版本号(当前 wanhui-reader/pos-1.9.x.apk,与服务器下载响应一致);两端必须装同一版本(旧包不兼容)。
装过旧版单体包「万汇NFC」的,先卸载旧包(包名不同,会抢默认付款应用)。安卓提示「禁止安装未知应用」时:在浏览器/文件管理器里允许「安装未知应用」后重试。
②
打开 App 并允许权限
读卡端:打开「万汇NFC-读卡端」,在系统设置里打开 NFC;本端没有常驻通知/保活服务,使用时保持 App 在前台、屏幕别锁。
买手端:打开「万汇NFC-买手端」,允许 NFC 与通知(Android 13+ 会申请通知权限,前台保活服务需要)。
两端分别点「开始读卡」「开始买手模式」,填同一个房间码。
③
把买手端设为「默认付款应用」(关键)
系统设置 → 连接/NFC → 默认付款应用 → 选择「万汇NFC-买手端」;或直接在买手端主页点置顶红条一键设置。
买手端首次进入会弹窗「建议把本应用设为默认付款应用」,点「去设置」可一键跳转;未设置时主页置顶显示红条「⚠ 未设为默认付款应用:POS 可能读到系统钱包 → 点此设置」。
设置成功后红条变绿「✅ 默认付款应用已就绪」。读卡端不需要设默认付款应用。
⚠ 不做第③步的风险:不设默认付款应用时,前台接管一般可用,但 App 退后台 / 息屏时可能被系统钱包抢走 → 交易失败;系统也可能把 POS 请求交给手机自带钱包(如 Apple/华为钱包),读到系统钱包里绑定的卡(扣错卡 / 读卡失败),而不是读卡端远程传来的卡。看到买手端主页红条变绿「✅ 默认付款应用已就绪」才算设置成功。
操作顺序(单碰卡)

1. 先开①读卡端,先选地区 US 或 HK(两端必须选同一地区;未选地区时房间码输入/随机不可用)→ 房间码 = 地区前缀 + 6-8 位数字(如 US123456;粘贴 US-123456 也能识别),可粘贴全码自动识别地区 → 点「进入」
2. 点「贴入虚拟测试卡」并把卡/手机贴住别拿开(网页仿真:贴卡时一次预取 PPSE/AID/GPO/记录 4 条)。真机 Apple Pay:先双击侧键+刷脸授权 → 再贴住读卡端;读卡端「响一声」=PPSE 探测成功(1.9.8 V4 贴卡只发一次 PPSE、不缓存/不 SELECT),详见下方 Apple Pay SOP
3. 再开②POS端,选同一地区、填同一个 6-8 位数字(前缀相同)进入 —— 卡片槽出现品牌+尾号、三条件全绿后,输入金额点「发起交易」
4. 响一声后 1-3 秒内让买手把 POS 贴到买手端手机上(最迟 8 秒);先贴 POS 再贴卡基本必失败(读卡端只有约 800ms 等卡窗口)。开始交易后读卡端连响三声「滴滴滴」=保持贴住,出票后再拿开
5. 观察日志(网页仿真):预取命中的 APDU 标 ⚡ 0ms 本地应答,只有 GENERATE AC 等未预取指令才走中继链路。真机 1.9.8 V4 贴卡只发一次 PPSE(不缓存),交易时 PPSE/SELECT/GPO 全部实时到卡,GPO 成功后才预取 READ
6. 试试不贴卡直接交易:POS端会报读卡超时;读卡端 wake 后 8 秒没有 POS 指令也会提示"POS 超时,请重新贴卡"
7. 超时口径:POS 端单条 APDU 最多等 8 秒;服务器对单条 APDU 有 6 秒看门狗,超时会先回 TIMEOUT(App 映射 6F00,终端更早失败/重试)
8. 与真机差异(1.9.8 V4):真机 1.9.8 V4:贴卡阶段只发一次 PPSE(2PAY) 做探测,不缓存任何应答、不执行 SELECT;交易时 POS 的 PPSE/SELECT/GPO 全部实时到卡;GPO 成功后才预取 READ(≤300ms)再回 resp。 本页为网页仿真,为便于演示在贴卡时一次预取 4 条,速度/日志口径以仿真为准,真实流程以真机为准

真机 Apple Pay 单碰卡 SOP (1.9.8/vc18 · V4 · 仅单碰卡;本页为网页仿真演示)
①
先双击+刷脸
iPhone 双击侧键唤出 Apple Pay → 刷脸/指纹授权;授权完成后再贴读卡端(V4 竞品路径顺序)。
②
再贴读卡端
授权后把 iPhone 顶部贴到读卡端 NFC 区压住(隔薄壳可以),读卡端 App 前台、屏幕常亮。
③
等响一声
读卡端响一声=PPSE 探测成功(1.9.8 V4 贴卡只发一次 PPSE、不缓存/不 SELECT),买手端卡片槽变绿。
④
1-3 秒内贴 POS
响一声后买手立即把买手手机背部贴 POS 读卡区(最好 3 秒内,最迟不超过 8 秒;iPhone 授权后卡随时可能失活)。
⑤
三声保持
读卡端滴滴滴三声=POS 已开始交易;两端保持不动,不要旋转/切后台/锁屏。
⑥
出票再松
POS 出小票或提示移除后,再拿开 iPhone 和买手手机;下一笔必须重新贴卡(不要复用同一贴)。
D 声含义:响一声=PPSE 探测成功(可贴 POS);滴滴滴三声=POS 已开始交易(或 POS 已贴但卡不在位,按读卡端提示处理)。
失败处理:顺序反/超 8 秒/贴歪要整笔重来(拿开 iPhone → 先双击+刷脸 → 重新贴读卡端 → 等响一声再贴 POS);一笔最多重试 2 次。详细见 docs/操作SOP.md。

版本读取中…