Partage via


Fonction ReadNFC

S’applique à : Applications Canvas

Lit une balise NFC (Near Field Communication).

Description

Utilisez la fonction ReadNFC pour lire une étiquette NFC qui est proche de votre appareil. Lorsqu’il est invoqué, l’écran affiche des instructions pour numériser une étiquette NFC et ne revient qu’une fois l’étiquette numérisée ou à l’expiration d’un délai d’attente.

Colonne Type Description
Identificateur Text L’identifiant des balises NFC si disponible.
NDEFRecords Table Les enregistrements NDEF pris en charge trouvés sur la balise.

Un seul NDEFRecord contient les colonnes suivantes :

Colonne Type Description
RTD Text La définition type d’enregistrement (RTD) de la balise. Seuls Text et URI sont pris en charge actuellement.
TNF Chiffre Le format de nom de type (TNF) de la balise. Seuls les TNF du type Well Known(1) sont pris en charge actuellement.
Text Text La charge utile de texte de la balise NFC si RTD est TEXT, Vide autrement.
URI Lien hypertexte La charge utile URI de la balise NFC si RTD est URI, Vide autrement.

Si l’enregistrement NDEF n’est pas pris en charge (par exemple, le TNF n’est pas de type Well Known), alors il ne sera pas retourné dans le cadre de la table NDEFRecords.

Vérifiez toujours les valeurs de la charge utile pour Vide en utilisant la fonction IsBlank avant de l’utiliser. Vous n’avez pas besoin de vérifier les valeurs RDT et TNF vous-même car elles doivent être les valeurs correctes pour Text et URI avoir une valeur non vide.

Les valeurs supplémentaires RDT et TNF peuvent être prises en charge à l’avenir. Si davantage de valeurs sont prises en charge, des colonnes de charge utile supplémentaires seront également ajoutées. Les valeurs brutes RTD et TNF sont fournies à titre informatif et n’ont pas besoin d’être consultées si la colonne de charge utile est cochée sur Vide. Plus d’informations sur ces valeurs et leur utilisation sont disponibles via le Forum NFC.

ReadNFC ne nécessite pas l’utilisation d’une balise contenant des enregistrements NDEF, mais vous pouvez toujours obtenir l’identifiant de la balise s’il en existe.

ReadNFC ne peut être utilisé que dans les formules de comportement.

Note

  • ReadNFC est uniquement pris en charge lors de l’exécution de l’application sur une application mobile native, telle que les applications iOS et Android . Même avec un lecteur pris en charge, un appareil peut ne pas prendre en charge NFC. Si votre application a l’option Gestion des erreurs au niveau de la formule activée, la fonction renverra une erreur. Dans le cas contraire, un message d’erreur s’affichera à l’utilisateur et la fonction renverra un enregistrement Vide.
  • Assurez-vous que le paramètre NFC est activé sur votre appareil pour utiliser cette fonctionnalité.

Syntaxe

LireNFC()

Examples

Formule Description Résultat
ReadNFC().Identifier Renvoie l’identifiant de la balise NFC s’il en existe un. 04A1C301314003
ReadNFC().NDEFRecords Renvoie une table des enregistrements NDEF trouvés sur la balise NFC s’ils sont d’un type et d’une charge utile pris en charge. Résultat NDEFRecords avec un exemple d’enregistrement.

Exemple étape par étape

  1. Créez une application canevas au format Téléphone.

  2. Ajouter un contrôle Button.

  3. Double-sélectionnez le contrôle button pour changer le texte du bouton en Lire la balise NFC (ou modifiez la propriété Text).

  4. Définissez la propriété OnSelect du contrôle button à cette formule qui ajoutera un élément à notre collection :

    With(ReadNFC(),
        Set(id, Coalesce(Identifier, "No ID"));
        ForAll(NDEFRecords, Collect(tagRecords, {ID: id, Value: Coalesce(Text, URI)})))
    

    Formule ci-dessus saisie en tant que propriété OnSelect du bouton.

    Cette formule lit une balise NFC en utilisant la fonction ReadNFC() et affiche des informations de type sur le résultat. Ensuite, elle collecte les balises NFC lues pour remplir la collection tagRecords à utiliser pour la galerie dans les prochaines étapes.

  5. Ajouter un contrôle Gallery avec une disposition verticale.

  6. Lorsque vous y êtes invité, sélectionnez la collection tagRecords comme source de données pour cette galerie. Cette action définit la propriété Items du contrôle Gallery.

    source de données pour la galerie sélectionnée comme tagRecords.

  7. Repositionnez le contrôle gallery afin qu’il ne chevauche pas le bouton et modifiez le type de disposition en Titre et sous-titre.

    Disposition de la galerie.

  8. Changez la formule Titre dans le contrôle gallery en ThisItem.Value et changez la formule Sous-titre dans le contrôle gallery en ThisItem.ID.

    Vous pouvez également supprimer le NextArrow du contrôle gallery puisqu’il n’est pas utilisé.

  9. Enregistrez et publiez l’application.

  10. Puisque la fonction ReadNFC() ne peut pas être utilisée dans Power Apps Studio ou dans un navigateur Web, ouvrez votre application sur un appareil mobile.

    Pourboire

    L’application peut mettre quelques instants à apparaître sur votre appareil mobile. Si vous ne voyez pas l’application répertoriée, essayez d’actualiser votre liste d’applications.

  11. Sélectionner Lire la balise NFC et scannez une balise. Répétez le processus pour ajouter plusieurs balises à votre collection.

    Application sur appareil mobile avec l’exemple de lecture de balise NFC et le résultat dans la galerie.