Na tej stronie opisaliśmy, jak sterować NFC na urządzeniu Cuttlefish za pomocą funkcji NFC Cuttlefish. NFC jest obsługiwane na urządzeniach Cuttlefish z Androidem 15 lub nowszym.
Korzystanie z Casimir
Funkcja NFC Cuttlefish korzysta z Casimir, zewnętrznego narzędzia do symulacji urządzeń NFC, które obsługuje wstrzykiwanie bajtów APDU do emulacji karty hosta. Casimir jest
zaimplementowany w
/platform/system/nfc/tools/casimir/.
Podczas uruchamiania Cuttlefish domyślnie uruchamia się też Casimir. Aby sterować Casimir, użyj usługi CasimirControlService.
CasimirControlService
Możesz używać usługi CasimirControlService za pomocą interfejsu API typu REST lub interfejsu wiersza poleceń. Więcej informacji znajdziesz w artykule
Cuttlefish: Environment Control.
W tabeli poniżej opisaliśmy metodę w CasimirControlService. Więcej
informacji znajdziesz w
casimir_control.proto.
| Metoda | Opis |
|---|---|
SendApdu
|
Wysyła bajty APDU (ciągi szesnastkowe) za pomocą NFC-A i ISO-DEP. Odpowiedź jest zwracana jako ciągi szesnastkowe. |
Poniżej znajdziesz przykładowe polecenie i uproszczoną odpowiedź na wysłanie 2 bajtów APDU: [0x00, 0x11, 0x22] i [0x33, 0x44, 0x55].
Polecenie
cvd env call CasimirControlService SendApdu '{apdu_hex_strings: ["001122", "334455"]}'Uproszczona odpowiedź
Rpc succeeded with OK status { "responseHexStrings": [ "9000", "9000", ] }