class QNearFieldTarget#

QNearFieldTarget 类提供了一个与目标设备通信的接口。更多

Inheritance diagram of PySide6.QtNfc.QNearFieldTarget

摘要#

方法#

信号#

注意

这份文档可能包含自动从C++转换为Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,也可以通过在https:/bugreports.qt.io/projects/PYSIDE创建工单的方式告诉我们。

详细描述#

QNearFieldTarget为与NFC目标设备通信提供了一个通用接口。此类支持NFC论坛设备和NFC论坛标签目标。所有特定目标的类都是此类的子类。

可以使用type()函数获取目标设备的类型。使用uid()函数返回目标的唯一标识符。《AccessMethods`标识符是从accessMethods()函数返回的,可以通过测试来确定目标支持哪些访问方法。

如果目标支持NdefAccess,则可以调用hasNdefMessage()来测试目标是否存储了NDEF消息,可以使用`readNdefMessages()`和`writeNdefMessages()`函数获取和设置NDEF消息。

如果目标支持TagTypeSpecificAccess,则可以使用`sendCommand()`向目标发送单个专用命令并检索响应。

class Type#

该枚举描述了目标检测到的标签的类型。

常量

描述

QNearFieldTarget.ProprietaryTag

一种未知的专用目标标签。

QNearFieldTarget.NfcTagType1

一种NFC标签类型1目标。

QNearFieldTarget.NfcTagType2

一种NFC标签类型2目标。

QNearFieldTarget.NfcTagType3

一种NFC标签类型3目标。

QNearFieldTarget.NfcTagType4

一种NFC标签类型4目标。如果NfcTagType4无法由下文中的NfcTagType4A或NfcTagType4B进一步细化,则使用此值。

QNearFieldTarget.NfcTagType4A

基于ISO/IEC 14443-3A标准的一种NFC标签类型4的目标。

QNearFieldTarget.NfcTagType4B

基于ISO/IEC 14443-3B标准的NFC标签类型4的目标。

QNearFieldTarget.MifareTag

Mifare目标。

class AccessMethod#

(继承自 enum.Flag) 此枚举描述了近场目标支持的访问方法。

常量

描述

QNearFieldTarget.UnknownAccess

目标支持未知访问类型。

QNearFieldTarget.NdefAccess

目标支持使用readNdefMessages()writeNdefMessages()读取和写入NDEF消息。

QNearFieldTarget.TagTypeSpecificAccess

目标支持使用sendCommand()发送标签类型特定命令。

QNearFieldTarget.AnyAccess

目标支持任何已知的访问类型。

class Error#

此枚举描述了近场目标报告的错误代码。

常量

描述

QNearFieldTarget.NoError

未发生错误。

QNearFieldTarget.UnknownError

发生了未知的错误。

QNearFieldTarget.UnsupportedError

该近场目标不支持请求的操作。

QNearFieldTarget {}: The target is no longer within range.

目标不再在范围内。

QNearFieldTarget {}: The target did not respond.

目标没有响应。

QNearFieldTarget {}: The checksum has detected a corrupted response.

校验和检测到响应已损坏。

QNearFieldTarget {}: Invalid parameters were passed to a tag type specific function.

已向标签类型特定函数传递无效参数。

QNearFieldTarget {}: Failed to connect to the target.

无法连接到目标。

QNearFieldTarget {}: Failed to read NDEF messages from the target.

无法从目标读取NDEF消息。

QNearFieldTarget {}: Failed to write NDEF messages to the target.

无法将NDEF消息写入目标。

QNearFieldTarget {}: Failed to send a command to the target.

无法向目标发送命令。

QNearFieldTarget {}: The request could not be completed within the time specified in waitForRequestCompleted().

请求没有在waitForRequestCompleted()指定的时间内完成。

__init__([parent=None])#
参数:

parentQObject

使用parent构建一个新的近场目标。

accessMethods()#
返回类型:

基于 AccessMethod 的组合

返回此近场目标支持的访问方法。

disconnect()#
返回类型:

bool

关闭与目标之间的连接,以便能够从一个不同的实例与目标通信。当 QNearFieldTarget 被销毁时,连接也将关闭。为处理命令或读取/写入 NDEF 消息而创建或重新创建到目标设备的连接。

仅当成功关闭现有连接时返回 true;否则返回 false

disconnected()#

当近距离目标移出范围时发出此信号。

hasNdefMessage()#
返回类型:

bool

如果近距离目标上存储至少一条 NDEF 消息,则返回 true;否则返回 false

maxCommandLength()#
返回类型:

int

返回可以使用 sendCommand 发送的最多字节数。如果目标不支持发送带类型的命令,则返回 0。

另请参阅

sendCommand()

ndefMessageRead(message)#
参数:

messageQNdefMessage

当从目标读取完整的 NDEF message 时发出此信号。

另请参阅

readNdefMessages()

type()#
返回类型:

Type

返回此近距离目标的标签类型。

uid()#
返回类型:

QByteArray

返回近距离目标标识符。

注意

在 iOS 上,使用 NdefAccess 方法发现的近距离目标,此函数返回一个空的 QByteArray。

另请参阅

AccessMethod