本页介绍了如何使用 Cuttlefish NFC 功能在 Cuttlefish 设备上控制 NFC。搭载 Android 15 或更高版本的 Cuttlefish 设备支持 NFC。
使用 Casimir
Cuttlefish NFC 功能使用外部 NFC 设备模拟工具 Casimir,该工具支持为主机卡模拟注入 APDU 字节。Casimir 是在 /platform/system/nfc/tools/casimir/
中实现的。
启动 Cuttlefish 时,Casimir 也会默认启动。如需控制 Casimir,请使用 CasimirControlService
服务。
CasimirControlService
您可以通过 REST API 或命令行界面来使用 CasimirControlService
服务。如需了解详情,请参阅 Cuttlefish:环境控制。
下表介绍了 CasimirControlService
中的方法。如需了解详情,请参阅 casimir_control.proto
。
方法 | 说明 |
---|---|
SendApdu
|
使用 NFC-A 和 ISO-DEP 发送 APDU 字节(十六进制字符串)。系统会以十六进制字符串的形式返回响应。 |
以下是发送两个 APDU 字节 [0x00, 0x11, 0x22]
和 [0x33, 0x44, 0x55]
的命令和简化响应示例。
命令
cvd env call CasimirControlService SendApdu '{apdu_hex_strings: ["001122", "334455"]}'
简化响应
Rpc succeeded with OK status { "responseHexStrings": [ "9000", "9000", ] }