Trang này mô tả cách kiểm soát NFC trên thiết bị Cuttlefish bằng tính năng NFC Cuttlefish. NFC được hỗ trợ trên các thiết bị Cuttlefish chạy Android 15 trở lên.
Sử dụng Casimir
Tính năng NFC của Cuttlefish sử dụng Casimir, một công cụ mô phỏng thiết bị NFC bên ngoài, hỗ trợ chèn byte APDU để mô phỏng thẻ máy chủ. Casimir được triển khai trong /platform/system/nfc/tools/casimir/
.
Khi chạy Cuttlefish, Casimir cũng sẽ được chạy theo mặc định. Để kiểm soát Casimir, hãy sử dụng dịch vụ CasimirControlService
.
CasimirControlService
Bạn có thể sử dụng dịch vụ CasimirControlService
thông qua API REST hoặc giao diện dòng lệnh. Để biết thông tin chi tiết, hãy xem bài viết Cuttlefish: Kiểm soát môi trường.
Bảng sau đây mô tả phương thức trong CasimirControlService
. Để biết thêm thông tin, hãy xem casimir_control.proto
.
Phương thức | Mô tả |
---|---|
SendApdu
|
Gửi các byte APDU (chuỗi thập lục phân) bằng NFC-A và ISO-DEP. Phản hồi được trả về dưới dạng chuỗi thập lục phân. |
Sau đây là một lệnh mẫu và phản hồi đơn giản để gửi hai byte APDU, [0x00, 0x11, 0x22]
và [0x33, 0x44, 0x55]
.
Lệnh
cvd env call CasimirControlService SendApdu '{apdu_hex_strings: ["001122", "334455"]}'
Phản hồi đơn giản
Rpc succeeded with OK status { "responseHexStrings": [ "9000", "9000", ] }