NFC Tag
Интерфейс org.sailfishos.nfc.Tag предназначен для взаимодействия с метками типа NFC Type 1. Подробнее…
Шина: | системная |
Служба: | org.sailfishos.nfc.daemon |
Объект: | /nfc0/{tag1, tag2, tag3} |
Интерфейс: | org.sailfishos.nfc.Tag |
Сигналы
- Removed()
Методы
- GetAll(int &version, bool &present, uint32 technology, uint32 &protocol, uint32 &type, vector<string> &intefaces, vector<ObjectPath> &ndef_records)
- GetInterfaceVersion(int &version)
- GetPresent(bool &present)
- GetProtocol(uint32 &protocol)
- GetTechnology(uint32 &technology)
- GetType(uint32 &type)
- GetInterfaces(vector<string> &intefaces)
- Deactivate()
- Acquire()
- Release()
- GetAll3(int &version, bool &present, uint32 technology, uint32 &protocol, uint32 &type, vector<string> & intefaces, vector<ObjectPath> &ndef_records, vector<pair<string, variant>> ¶meters)
- GetPollParameters(vector<pair<string, variant>> ¶meters)
- Transceive(vector<uint8> &data)
Подробное описание
Метки NFC Type 1 являются первыми из появившихся меток NFC. Они подходят для записи и считывания NDEF сообщений, могут использоваться для пропусков, их популярность оправдана сравнительно низкой ценой.
Описание сигналов
Removed()
Сигнал испускается при отключении тега.
Описание методов
GetAll(int &version, bool &present, uint32 &technology, uint32 &protocol, uint32 &type, vector<string> &intefaces, vector<ObjectPath> &ndef_records)
Возвращает:
version
— версию интерфейса;present
— флаг присутствия метки в зоне действия адаптера;technology
— битовую маску поддерживаемых технологий (см. GetTechnology);protocol
— протокол (см. GetProtocol);type
— тип;interfaces
— список совместимых интерфейсов;ndef_records
— список NDEF-записей, содержащихся в метке.
GetInterfaceVersion(int &version)
Возвращает версию интерфейса.
GetPresent(bool &present)
Возвращает флаг, сообщающий о статусе подключения этого тега к устройству.
GetProtocol(uint32 &protocol)
Возвращает тип тега. Возможные варианты:
0x00
— NFC_PROTOCOL_UNKNOWN (unknown);0x01
— NFC_PROTOCOL_T1_TAG (Type1);0x02
— NFC_PROTOCOL_T2_TAG (Type2);0x04
— NFC_PROTOCOL_T3_TAG (Type3);0x08
— NFC_PROTOCOL_T4A_TAG (Type4A);0x10
— NFC_PROTOCOL_T4B_TAG (Type4B);0x20
— NFC_PROTOCOL_NFC_DEP (DEP).0x21
— NFC_PROTOCOL_CLASSIC_TAG (Classic).
GetTechnology(uint32 &technology)
Возвращает используемый стандарт NFC.
Возможные варианты:
0x00
— NFC_TAG_TYPE_UNKNOWN (unknown);0x01
— NFC_TAG_TYPE_FELICA (NFC-A);0x02
— NFC_TAG_TYPE_MIFARE_CLASSIC (NFC-B);0x04
— NFC_TAG_TYPE_MIFARE_ULTRALIGHT (NFC-F).
GetInterfaces(vector<string> &intefaces)
Возвращает список совместимых интерфейсов, например: org.sailfishos.nfc.Tag, org.sailfishos.nfc.IsoDep.
GetType(uint32 &type)
Возвращает тип тега.
Возможные значения:
0x00
— NFC_TAG_TYPE_UNKNOWN;0x01
— NFC_TAG_TYPE_FELICA;0x02
— NFC_TAG_TYPE_MIFARE_CLASSIC;0x04
— NFC_TAG_TYPE_MIFARE_ULTRALIGHT.
GetAll3(int &version, bool &present, uint32 technology, uint32 &protocol, uint32 &type, vector<string> &interfaces, vector<ObjectPath> &ndef_records, vector<pair<string, variant>> parameters)
Возвращает:
version
— версию интерфейса;present
— наличие метки в зоне действия адаптера;technology
— битовую маску поддерживаемых технологий (см. GetTechnology);protocol
— протокол (см. GetProtocol);type
— тип;interfaces
— список интерфейсов;ndef_records
— список NDEF-записей, содержащихся в метке;parameters
— низкоуровневые параметры метки.
Deactivate()
Деактивирует метку.
Acquire(bool wait)
Резервирует карту или метку для эксклюзивного доступа D-Bus клиентом, который вызывает этот метод. Вызвав данный метод, приложение может отправить последовательность команд, получая гарантию, что никакие другие команды не будут отправлены в метку.
Release()
Отменяет эксклюзивный доступ приложения к метке, предоставленный методом Acquire
.
GetPollParameters(vector<pair<string, variant>> ¶meters)
Метод служит для доступа к низкоуровневым параметрам метки.
Transceive(vector<uint8> &data)
Метод служит для низкоуровнего обмена данными с меткой, например, нестандартными APDU.