DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Fonctions NFC
  • Utilisation en mode bloquant (Syntaxe 1)
  • Utilisation en mode non bloquant (Syntaxe 2)
  • Remarques diverses
  • Permissions requises
  • AppID nécessaire
  • Application en arrière-plan : Spécificité à partir de Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Déclenche la lecture d'un tag (ou puce) NFC ou active la détection de tags NFC pour la fenêtre en cours.
Exemple
// Lecture d'un tag NFC en mode bloquant
tag est un nfcTag
tag = NFCLitTag()
SI PAS ErreurDétectée ALORS
Info(ChaîneConstruit("Lecture d'un tag NFC de type %1", tag..Type))
POUR TOUTE donnée DE tag.Donnée
SELON donnée.Type
CAS nfcTexte
Info(donnée.Contenu)
CAS nfcURI
SI ChaîneCommencePar(donnée.Contenu, "http") ALORS
NavigateurLanceAppli(donnée.Contenu)
FIN
CAS nfcMedia
SI donnée.TypeMIME ~= "image/png" ALORS
fSauveBuffer(ComplèteRep(SysRepCarteStockage()) + "image.png", donnée.Contenu)
FIN
FIN
FIN
FIN
// Lecture d'un tag NFC en non bloquant
SI PAS NFCLitTag(LectureTagNFC) ALORS
Erreur("Echec du lancement de la détection NFC.", ErreurInfo())
FIN
PROCÉDURE INTERNE LectureTagNFC(tag est un nfcTag)
Info(ChaîneConstruit("Tag NFC de type %1 détecté.", tag.Type))
// Arrêt de la détection
RENVOYER Vrai
FIN
Syntaxe
Android

Lecture d'un Tag NFC en mode bloquant Masquer les détails

<Résultat> = NFCLitTag()
<Résultat> : Variable de type nfcTag
Variable de type nfcTag initialisée avec les informations lues dans le tag NFC.
En cas d'erreur, la variable ErreurDétectée est à Vrai. Pour plus de détails sur l'erreur, utilisez la fonction ErreurInfo.

Lecture d'un Tag NFC en mode non bloquant Masquer les détails

<Résultat> = NFCLitTag(<Procédure WLangage>)
<Résultat> : Booléen
  • Vrai si la détection de tag NFC a été déclenchée,
  • Faux dans le cas contraire. En cas d'erreur, la variable ErreurDétectée est à Vrai. Pour plus de détails sur l'erreur, utilisez la fonction ErreurInfo.
<Procédure WLangage> : Nom de procédure
Nom de la procédure WLangage ("callback") appelée lorsqu'un tag NFC a été lu. Cette procédure est de la forme :
PROCEDURE <Nom de la procédure> (<Tag>)
où <Tag> est une variable de type nfcTag contenant les informations lues dans le tag NFC.
Remarques :
  • Les paramètres de cette procédure sont optionnels. Il n'est pas nécessaire de passer des paramètres à cette procédure. En effet, ces paramètres sont renseignés automatiquement à chaque appel.
  • Si la procédure retourne Vrai, la détection de tag NFC sera automatiquement stoppée après la lecture.
  • Si la procédure retourne Faux ou ne retourne pas de valeur, la détection restera active jusqu'à la fermeture de la fenêtre dans laquelle la procédure a été déclenchée.
Remarques
Android

Utilisation en mode bloquant (Syntaxe 1)

L'appel de la fonction NFCLitTag déclenche automatiquement l'ouverture d'une fenêtre invitant l'utilisateur à approcher son appareil d'un autre appareil compatible NFC. Cette fenêtre sera automatiquement fermée :
  • à la fin de l'envoi
  • si l'utilisateur annule l'envoi en appuyant sur la touche Back de l'appareil.
    Remarque : Pour personnaliser le message affiché dans cette fenêtre, utilisez la fonction TitreSuivant avant l'appel à la fonction NFCLitTag.

Utilisation en mode non bloquant (Syntaxe 2)

L'appel de la fonction NFCLitTag déclenche l'activation de la détection de tags NFC pour la fenêtre en cours au moment de l'appel.
La détection sera active uniquement lorsque cette fenêtre est au premier plan de l'application.
Si la fenêtre est fermée, la détection sera stoppée et il sera nécessaire de la relancer par un appel à la fonction NFCLitTag.
Si aucune fenêtre n'est en cours au moment de l'appel de la fonction NFCLitTag, une erreur fatale sera déclenchée.

Remarques diverses

  • Les fonctions NFC ne peuvent pas être utilisées dans le simulateur ou dans l'émulateur.
  • iPhone/iPad Les fonctions NFC sont disponibles uniquement en lecture.

Permissions requises

L'utilisation de cette fonction entraîne la modification des permissions requises par l'application.
Permissions requises :
  • NFC : Permet aux applications d'effectuer des opérations d'entrée/sortie par la technologie NFC.
  • VIBRATE : Permet d'accéder à la fonction vibreur.
iPhone/iPad

AppID nécessaire

L'utilisation de cette fonction entraîne la modification des AppID de l'application dans le compte développeur Apple. Il est nécessaire d'activer l'App ID "NFC Tag Reading".
Android

Application en arrière-plan : Spécificité à partir de Android 10

A partir de Android 10, il n'est plus possible d'ouvrir une fenêtre lorsque l'application est en arrière-plan.
La fonction NFCLitTag peut provoquer l'ouverture d'une fenêtre. Si cette fonction est utilisée alors que l'application est en arrière-plan, une erreur fatale sera générée.
Conseils :
  • Il est possible de savoir si l'application est en arrière-plan grâce à la fonction EnModeArrièrePlan.
  • Si une application a besoin d'interagir avec l'utilisateur alors qu'elle se trouve en arrière-plan, la solution consiste à afficher une notification (via le type Notification). Lors du clic sur la notification, l'application sera remise au premier plan si la propriété ActiveApplication est à Vrai. Il est également possible d'ouvrir une fenêtre depuis la procédure passée à la propriété ActionClic.
Liste des exemples associés :
WM Système Exemples multiplateforme (WINDEV Mobile) : WM Système
[ + ] Cette application est un exemple didactique montrant quelques unes des fonctionnalités de WINDEV Mobile pour Android/iOS.
Les fonctions système utilisées sont :
- NFC
- Champ Multimédia
- Luminosité
- Volume
- WIFI
- Bluetooth
- Toast
- Boussole
- Accéléromètre
- Champ caméra
- LED
- Vibrations
- Notifications
- Fonctions de dessin
- Internet
Classification Métier / UI : Code métier
Composante : wd290android.jar
Version minimum requise
  • Version 18
Commentaires
NFCLitTag En Windev Mobile 24 IOS sa marche pas
dommage NFCLitTag En Windev Mobile 24 IOS sa marche pas encore
Moez
03 avr. 2019

Dernière modification : 22/06/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale