NFC

Auf dieser Seite wird beschrieben, wie Sie NFC auf einem Cuttlefish-Gerät mit dem Cuttlefish-NFC-Feature steuern. NFC wird auf Cuttlefish-Geräten mit Android 15 oder höher unterstützt.

Casimir verwenden

Die Cuttlefish-NFC-Funktion verwendet Casimir, ein externes NFC-Gerätesimulationstool, das das Einfügen von APDU-Bytes für die Host-Kartenemulation unterstützt. Casimir ist in /platform/system/nfc/tools/casimir/ implementiert.

Wenn Sie Cuttlefish starten, wird Casimir standardmäßig ebenfalls gestartet. Verwenden Sie den Dienst CasimirControlService, um Casimir zu steuern.

CasimirControlService

Sie können den CasimirControlService-Dienst über die REST API oder die Befehlszeilenschnittstelle verwenden. Weitere Informationen finden Sie unter Cuttlefish: Environment Control.

In der folgenden Tabelle wird die Methode in CasimirControlService beschrieben. Weitere Informationen finden Sie unter casimir_control.proto.

Methode Beschreibung
SendApdu Sendet APDU-Bytes (Hexadezimalstrings) mit NFC-A und ISO-DEP. Die Antwort wird als Hexadezimalstrings zurückgegeben.

Das Folgende ist ein Beispiel für einen Befehl und eine vereinfachte Antwort zum Senden von zwei APDU-Bytes, [0x00, 0x11, 0x22] und [0x33, 0x44, 0x55].

  • Befehl

    cvd env call CasimirControlService SendApdu '{apdu_hex_strings: ["001122", "334455"]}'
    
  • Vereinfachte Antwort

    Rpc succeeded with OK status
    {
    "responseHexStrings": [
      "9000",
      "9000",
    ]
    }