- class QNearFieldManager#
The
QNearFieldManager
class provides access to notifications for NFC events. More…Synopsis#
Methods#
def
__init__()
def
isEnabled()
def
isSupported()
Signals#
def
targetDetected()
def
targetLost()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
NFC Forum devices support two modes of communications. The first mode, peer-to-peer communications, is used to communicate between two NFC Forum devices. The second mode, master/slave communications, is used to communicate between an NFC Forum device and an NFC Forum Tag or Contactless Card. The
targetDetected()
signal is emitted when a target device enters communications range. Communications can be initiated from the slot connected to this signal.NFC Forum devices generally operate as the master in master/slave communications. Some devices are also capable of operating as the slave, so called Card Emulation mode. In this mode the local NFC device emulates a NFC Forum Tag or Contactless Card.
Applications can connect to the
targetDetected()
andtargetLost()
signals to get notified when an NFC Forum Tag enters or leaves proximity. Before these signals are emitted target detection must be started with thestartTargetDetection()
function. Target detection can be stopped with thestopTargetDetection()
function. When the target is no longer required the target should be deleted as other applications may be blocked from accessing the target.- class AdapterState#
This enum describes the different states a NFC adapter can have.
Constant
Description
QNearFieldManager.AdapterState.Offline
The nfc adapter is offline.
QNearFieldManager.AdapterState.TurningOn
The nfc adapter is turning on.
QNearFieldManager.AdapterState.Online
The nfc adapter is online.
QNearFieldManager.AdapterState.TurningOff
The nfc adapter is turning off.
Constructs a new near field manager with
parent
.- adapterStateChanged(state)#
- Parameters:
state –
AdapterState
This signal is emitted whenever the
state
of the NFC adapter changed.Note
Currently, this signal is only emitted on Android.
- isEnabled()#
- Return type:
bool
Returns
true
if the device has a NFC adapter and it is turned on; otherwise returnsfalse
.See also
- isSupported([accessMethod=QNearFieldTarget.AnyAccess])#
- Parameters:
accessMethod –
AccessMethod
- Return type:
bool
Returns
true
if the underlying device has a NFC adapter; otherwise returnsfalse
. If anaccessMethod
is given, the function returnstrue
only if the NFC adapter supports the givenaccessMethod
.See also
- setUserInformation(message)#
- Parameters:
message – str
Sets the message shown to the user by the system. If the target detection is running the
message
will be updated immediately and can be used as a progress message. The last message set before a call tostartTargetDetection()
without an error message is used as a success message. If the target detection is not running themessage
will be used as the initial message when the next detection is started. By default no message is shown to the user.Note
Currently, this function only has an effect on iOS because a popup is shown by the system during the scan. On iOS, this
message
is mapped to the alert message which is shown upon successful completion of the scan. Other platforms will ignoremessage
.- startTargetDetection(accessMethod)#
- Parameters:
accessMethod –
AccessMethod
- Return type:
bool
Starts detecting targets and returns
true
if target detection is successfully started; otherwise returnsfalse
. Causes thetargetDetected()
signal to be emitted when a target is within proximity. Only tags with the givenaccessMethod
will be delivered. Active detection continues untilstopTargetDetection()
has been called.To detect targets with a different
accessMethod
,stopTargetDetection()
must be called first.Note
On iOS it is impossible to start target detection for both NdefAccess and TagTypeSpecificAccess at the same time. So if AnyAccess is selected, NdefAccess will be used instead.
See also
- stopTargetDetection([errorMessage=""])#
- Parameters:
errorMessage – str
Stops detecting targets. The
targetDetected()
signal will no longer be emitted until another call tostartTargetDetection()
is made. Targets detected before are still valid.Note
On iOS, detected targets become invalid after this call (e.g. an attempt to write or read NDEF messages will result in an error).
If an
errorMessage
is provided, this is a hint to the system that the goal, the application had, was not reached. TheerrorMessage
and a matching error icon are shown to the user. Calling this function with an emptyerrorMessage
, implies a successful operation end; otherwise anerrorMessage
should be passed to this function.Note
Currently,
errorMessage
only has an effect on iOS because a popup is shown by the system during the scan where theerrorMessage
is visible. Other platforms will ignore this parameter.See also
- targetDetected(target)#
- Parameters:
target –
QNearFieldTarget
This signal is emitted whenever a target is detected. The
target
parameter represents the detected target.This signal will be emitted for all detected targets.
QNearFieldManager
maintains ownership oftarget
, however, it will not be destroyed until theQNearFieldManager
destructor is called. Ownership may be transferred by calling setParent().Do not delete
target
from the slot connected to this signal, instead call deleteLater().Note
that if
target
is deleted before it moves out of proximity thetargetLost()
signal will not be emitted.See also
- targetDetectionStopped()#
This signal is emitted whenever the target detection is stopped.
Note
Mostly this signal is emitted when
stopTargetDetection()
has been called. Additionally the user is able to stop the detection on iOS within a popup shown by the system during the scan, which also leads to emitting this signal.- targetLost(target)#
- Parameters:
target –
QNearFieldTarget
This signal is emitted whenever a target moves out of proximity. The
target
parameter represents the lost target.Do not delete
target
from the slot connected to this signal, instead use deleteLater().See also