NFC

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ị mực ống 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 khởi chạy Cuttlefish, Casimir cũng được khởi chạy theo mặc định. Để điều khiển 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 hex) bằng NFC-A và ISO-DEP. Phản hồi được trả về dưới dạng chuỗi hex.

Sau đây là lệnh mẫu và phản hồi được đơn giản hoá để gửi hai byte ADB là [0x00, 0x11, 0x22][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",
    ]
    }