Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release
вместо aosp-main
для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
NFC
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
На этой странице описывается, как управлять NFC на устройстве Cuttlefish с помощью функции Cuttlefish NFC. NFC поддерживается на устройствах Cuttlefish под управлением Android 15 или выше.
Использовать Казимира
Функция Cuttlefish NFC использует Casimir, внешний инструмент симуляции устройств NFC, который поддерживает инъекцию байтов APDU для эмуляции карты хоста. Casimir реализован в /platform/system/nfc/tools/casimir/
.
При запуске Cuttlefish по умолчанию также запускается Casimir. Для управления Casimir используйте службу CasimirControlService
.
КазимирКонтрольСервис
Вы можете использовать службу CasimirControlService
через REST API или интерфейс командной строки. Подробности см. в Cuttlefish: Environment Control .
В следующей таблице описывается метод в CasimirControlService
. Для получения дополнительной информации см. casimir_control.proto
.
Метод | Описание |
---|
SendApdu | Отправляет байты APDU (шестнадцатеричные строки) с NFC-A и ISO-DEP. Ответ возвращается в виде шестнадцатеричных строк. |
Ниже приведен пример команды и упрощенного ответа для отправки двух байтов 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",
]
}
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# NFC\n\nThis page describes how to control NFC on a Cuttlefish device using the\nCuttlefish NFC feature. NFC is supported on Cuttlefish devices running\nAndroid 15 or higher.\n\nUse Casimir\n-----------\n\nThe Cuttlefish NFC feature uses Casimir, an external NFC device simulation tool,\nwhich supports injecting APDU bytes for host card emulation. Casimir is\nimplemented in\n[`/platform/system/nfc/tools/casimir/`](https://cs.android.com/android/platform/superproject/+/android-latest-release:packages/modules/Nfc/libnfc-nci/tools/casimir/).\n\nWhen launching Cuttlefish, Casimir is also launched by default. To\ncontrol Casimir, use the `CasimirControlService` service.\n\n### CasimirControlService\n\nYou can use the `CasimirControlService` service through the REST API or the\ncommand line interface. For details, see\n[Cuttlefish: Environment Control](/docs/setup/create/cuttlefish-control-environment).\n\nThe following table describes the method in `CasimirControlService`. For\nmore information, see\n[`casimir_control.proto`](https://cs.android.com/android/platform/superproject/+/android-latest-release:device/google/cuttlefish/host/commands/casimir_control_server/casimir_control.proto).\n\n| Method | Description |\n|------------|-------------------------------------------------------------------------------------------------|\n| `SendApdu` | Sends APDU bytes (hex strings) with NFC-A and ISO-DEP. The response is returned as hex strings. |\n\nThe following is an example command and a simplified response for sending two\nAPDU bytes, `[0x00, 0x11, 0x22]` and `[0x33, 0x44, 0x55]`.\n\n- Command\n\n cvd env call CasimirControlService SendApdu '{apdu_hex_strings: [\"001122\", \"334455\"]}'\n\n- Simplified response\n\n Rpc succeeded with OK status\n {\n \"responseHexStrings\": [\n \"9000\",\n \"9000\",\n ]\n }"]]