Sur cette page

Les changements apportés à Qt NFC

Qt 6 est le résultat d'un effort conscient pour rendre le cadre plus efficace et plus facile à utiliser.

Nous essayons de maintenir la compatibilité binaire et source pour toutes les API publiques dans chaque version. Mais certains changements étaient inévitables dans un effort pour faire de Qt un meilleur framework.

Dans cette rubrique, nous résumons ces changements dans Qt NFC, et fournissons des conseils pour les gérer.

Nouvelles fonctionnalités et méthodes

Ajouté QNdefRecord::clear()

Utilisez cette méthode pour effacer un enregistrement NDEF.

Ajouté QNdefFilter::match()

Utilisez cette méthode pour vérifier si une adresse QNdefMessage correspond au filtre donné. La méthode renvoie true en cas de correspondance réussie et false dans le cas contraire.

Étendue QNearFieldTarget::Type

L'énumération a été étendue à deux types supplémentaires :

Changements dans les caractéristiques et les méthodes

Renommé QNearFieldManager::isAvailable()

QNearFieldManager::isAvailable() a été renommé en QNearFieldManager::isEnabled().

Ajout d'un argument de méthode d'accès à QNearFieldManager::isSupported

L'argument accessMethod permet de vérifier si une fonctionnalité spécifique est prise en charge. Ceci est important car différentes plateformes ou versions de systèmes d'exploitation peuvent prendre en charge différentes options.

Ajout de l'argument de la méthode d'accès à QNearFieldManager::startTargetDetection

L'argument accessMethod permet de rechercher des étiquettes NFC avec la méthode d'accès donnée.

Remplacement de QNdefNfcSmartPosterRecord::typeInfo par QByteArray QString

Selon la spécification NDEF Smart Poster, le type est une chaîne formatée UTF-8. Cela affecte les méthodes QNdefNfcSmartPosterRecord::typeInfo() et QNdefNfcSmartPosterRecord::setTypeInfo().

Mise à jour du type de retour de QNdefFilter::appendRecord

QNdefFilter::appendRecord effectue désormais une validation de base des paramètres d'entrée et renvoie une valeur booléenne indiquant si l'enregistrement est ajouté au filtre ou non.

Fonctionnalités et méthodes supprimées

Suppression de QNearFieldTarget::url

Cette méthode n'a jamais été implémentée dans les sous-classes existantes de QNearFieldTarget.

Supprimé QNearFieldTarget::sendCommands

Dans Qt Help 5, cette méthode n'était pas très utile car elle ne permettait pas de suivre les résultats des commandes intermédiaires. Normalement, une commande supplémentaire ne doit être envoyée que lorsque la commande précédente a été exécutée avec succès.

L'approche correcte consisterait à créer manuellement une file d'attente de commandes, à utiliser QNearFieldTarget::sendCommand pour envoyer une commande et QNearFieldTarget::requestCompleted ou QNearFieldTarget::error pour gérer les résultats de chaque commande individuellement.

Suppression de QNearFieldTarget::keepConnection

Les méthodes QNearFieldTarget::keepConnection() et QNearFieldTarget::setKeepConnection() ont été supprimées. Le maintien de la connexion est le comportement par défaut pour l'instant.

Supprimé QNearFieldTarget::isProcessingCommand

Cette méthode n'a jamais été implémentée et renvoyait toujours false.

A rendu QNearFieldTarget::setResponseForRequest private API

La méthode ne devrait pas être exposée en tant qu'API publique. Utilisez QNearFieldTarget::ndefMessageRead ou QNearFieldTarget::requestResponse pour lire les données d'un tag NFC.

Suppression de QNearFieldTarget::handleResponse

Cette méthode a été supprimée car elle ne faisait que transmettre l'appel à QNearFieldManager::setResponseForRequest, qui est devenu une API privée.

Création de l'API privée QNearFieldTarget::reportError

Un signal QNearFieldTarget::error peut être utilisé à la place.

Suppression du signal QNearFieldTarget::ndefMessagesWritten

Le signal QNearFieldTarget::requestCompleted est utilisé pour les messages NDEF et les commandes personnalisées. Le paramètre id peut être utilisé pour vérifier quelle requête est réellement terminée.

Suppression de QNearFieldManager: :(un)registerNdefMessageHandler

Les méthodes QNearFieldTarget::registerNdefMessageHandler et QNearFieldTarget::unregisterNdefMessageHandler ont été supprimées.

Utilisez QNearFieldTarget::ndefMessageRead() et QNdefFilter::match() pour détecter les messages NDEF et filtrer ceux qui sont nécessaires.

Note : L'application peut toujours être lancée automatiquement une fois que la balise NDEF est touchée. L'exemple de l'URL annotée montre comment y parvenir sur Android.

Suppression de QNearFieldManager::TargetAccessModes

L'enum TargetAccessModes a été supprimé ainsi que les méthodes getter et setter (QNearFieldManager::setTargetAccessModes() et QNearFieldManager::targetAccessModes()).

Cette fonctionnalité n'est pas prise en charge sur les plateformes Android et iOS.

Suppression de QNearFieldShareManager et QNearFieldShareTarget

Le partage de fichiers via NFC est obsolète sur Android dans l'API 29. D'autres technologies doivent être utilisées à la place.

Suppression de l'API QML

La prise en charge de l'API QML est abandonnée.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.