Guides et Ressources Techniques

Programmer des tags NFC avec Android et iOS : guide pratique complet

Comment programmer un tag NFC avec Android ou iOS : applications, formats NDEF, types de contenu et bonnes pratiques pour les applications industrielles.

Sommaire

Prérequis : compatibilité smartphone et tag

Avant de programmer un tag NFC avec un smartphone, vérifiez que ces trois conditions sont réunies :

  1. Votre smartphone supporte le NFC : presque tous les Android modernes (depuis Android 4.0) et les iPhone 7 et supérieurs supportent le NFC. Activez-le dans les paramètres si nécessaire (Réglages > Connexions > NFC).
  2. Votre iPhone est compatible écriture NFC : sur iOS, la lecture NFC est disponible depuis iPhone 7/iOS 11 (avec app). La lecture native sans app (background tag reading) nécessite iPhone XS/XR ou plus récent sous iOS 14+. L'écriture NFC nécessite iOS 13+ et une application dédiée.
  3. Votre tag NFC est vierge ou non verrouillé : un tag verrouillé en lecture seule ne peut plus être réécrit. Vérifiez l'état du tag avec votre application avant de tenter une écriture.

Les puces NFC les plus compatibles pour la programmation via smartphone : NTAG213, NTAG215, NTAG216 (NXP). Ces trois puces fonctionnent de manière fiable sur Android et iOS, toutes versions récentes.

Applications de programmation NFC recommandées

Applications Android

  • NFC Tools (Wakdev) : la référence sur Android. Interface claire, supporte tous les types d'enregistrements NDEF, lecture des informations de la puce (type, taille mémoire disponible, UID), écriture protégée par mot de passe. Disponible en version gratuite et Pro.
  • NFC TagWriter by NXP : développé directement par NXP (le principal fabricant de puces NFC). Particulièrement adapté aux puces NXP (NTAG, MIFARE). Intègre des modèles prédéfinis pour des cas d'usage courants (contact, WiFi, lancement d'application).
  • NFC Tools Pro (Wakdev) : version avancée de NFC Tools. Ajoute l'automatisation (tâches déclenchées à la lecture d'un tag), le plug-in de programmation en lot, et les options de sécurité avancées.

Applications iOS

  • NFC Tools (Wakdev) : également disponible sur iOS. Même interface qu'Android. Limitation : sur iOS, la lecture et l'écriture NFC nécessitent que l'app soit en premier plan (pas de lecture en arrière-plan dans l'app). Compatible iPhone 7+ pour lecture, iPhone 7+ iOS 13+ pour écriture.
  • NFC for iPhone (Apps4Life) : alternative simple pour la lecture et l'écriture de base. Bonne compatibilité iOS 14+.
  • Simply NFC : interface minimaliste pour les utilisateurs non techniques. Idéal pour des déploiements terrain où des opérateurs doivent programmer des tags sans formation approfondie.

Pour des applications industrielles nécessitant l'intégration de la programmation NFC dans un workflow métier (ERP, GMAO, WMS), l'option recommandée est de développer une application dédiée utilisant les SDK natifs Android ou iOS — voir la section Programmation en masse via API.

Types de contenu NDEF à programmer

Programmer une URL

C'est le type de contenu le plus courant. Quand un utilisateur approche son téléphone d'un tag contenant une URL, le navigateur s'ouvre automatiquement.

Étapes dans NFC Tools (Android ou iOS) :

  1. Onglet « Écrire »
  2. « Ajouter un enregistrement »
  3. Sélectionner « URL / URI »
  4. Entrer l'URL complète (https://...)
  5. Approcher le téléphone du tag → l'écriture se lance automatiquement
  6. Message de confirmation affiché

Conseils :

  • Préférez des URLs courtes — la mémoire d'un NTAG213 est de 144 octets, une URL longue peut ne pas tenir.
  • Utilisez une URL pointant vers votre serveur plutôt qu'une URL statique — vous pouvez modifier la destination côté serveur sans remplacer le tag.
  • Pour les applications industrielles, encodez dans l'URL l'identifiant de l'objet (ex : https://gmao.monentreprise.fr/asset/12345). Le serveur affiche la fiche de l'actif correspondant.

Programmer du texte brut

Un enregistrement texte affiche directement le contenu à l'écran lors de la lecture. Utile pour des données simples lisibles par l'humain (numéro de série, référence, instructions).

  1. Onglet « Écrire » → « Ajouter un enregistrement »
  2. Sélectionner « Texte »
  3. Entrer le texte et la langue (fr)
  4. Approcher le téléphone du tag

Limite : le texte brut n'est pas interactif. L'utilisateur voit le texte mais ne peut pas cliquer. Pour des données qui doivent mener à une action, préférez l'URL.

Programmer une vCard (contact)

Un tag NFC peut stocker une vCard — quand un utilisateur approche son téléphone, l'option d'ajouter le contact s'affiche automatiquement. Utile sur des badges d'événement ou des présentoirs commerciaux.

  1. Onglet « Écrire » → « Ajouter un enregistrement »
  2. Sélectionner « Contact / vCard »
  3. Renseigner les champs (nom, téléphone, email, entreprise)
  4. Approcher le téléphone du tag

Vérifiez que les données de la vCard tiennent dans la mémoire de votre tag. Un NTAG213 (144 octets) peut être juste pour une vCard complète — préférez NTAG215 ou NTAG216 si vous avez de nombreux champs.

Lancer une app Android

L'Android Application Record (AAR) force l'ouverture d'une application spécifique lors du scan du tag. Si l'app n'est pas installée, le Play Store s'ouvre sur la page de l'app.

  1. Onglet « Écrire » → « Ajouter un enregistrement »
  2. Sélectionner « Application Android »
  3. Entrer le package name de l'application (ex : com.monentreprise.gmao)
  4. Approcher le téléphone du tag

Note iOS : l'AAR est ignoré sur iOS. Pour rediriger vers une app iOS, utilisez une URL universelle (Universal Link) configurée côté app.

Protéger le tag après programmation

Une fois le tag programmé avec le contenu définitif, vous pouvez le protéger pour empêcher des modifications non autorisées.

Verrouillage en lecture seule (One-Time Write)

Le verrouillage est définitif et irréversible. Une fois verrouillé, le contenu du tag ne peut plus jamais être modifié.

Dans NFC Tools : onglet « Autres » → « Lecture seule » → confirmer. À utiliser uniquement si vous êtes certain que le contenu ne devra jamais évoluer.

Protection par mot de passe (Password)

Plus flexible : le tag reste modifiable, mais seulement avec le mot de passe correct. Sur les puces NTAG21x, NFC Tools Pro permet de définir un mot de passe de 4 octets :

  1. Onglet « Autres » → « Sécurité »
  2. Définir le mot de passe (4 octets, 8 caractères hexadécimaux)
  3. Choisir si la protection s'applique à l'écriture seule ou à l'écriture ET la lecture

Attention : notez le mot de passe dans un lieu sécurisé. Si vous le perdez, vous ne pourrez plus modifier le tag.

Tester le tag après programmation

Avant de déployer des tags sur vos actifs, testez-les dans des conditions représentatives :

  • Lisibilité sur différents appareils : testez au minimum sur un Android récent et un iPhone récent (XS ou supérieur). Si votre application doit fonctionner sur des terminaux plus anciens, testez aussi sur ceux-là.
  • Lisibilité en contexte réel : posez le tag sur sa surface de montage réelle (métal, plastique, bois) et testez la lecture. Les performances peuvent varier selon le substrat.
  • Distance de lecture : vérifiez que le tag est lisible à la distance prévue dans votre processus. Un tag industriel on-metal bien positionné doit être lisible à 3–5 cm typiquement.
  • Lecture background (iOS) : si vous souhaitez que l'iPhone lise le tag automatiquement sans ouvrir d'app (background tag reading), testez sur iPhone XS/XR ou plus récent sous iOS 14+. Vérifiez que votre URL est en HTTPS (obligatoire pour le background reading iOS).

Programmation en masse via API

Pour les applications industrielles nécessitant la programmation de dizaines ou centaines de tags par jour, l'approche "application smartphone + NFC Tools" atteint ses limites. Deux alternatives :

Application mobile dédiée

Développez une application Android ou iOS propre à votre workflow. L'application se connecte à votre système (ERP, GMAO) via API REST, récupère les données à encoder pour l'actif sélectionné, écrit automatiquement le tag, et enregistre la transaction dans le système.

SDK NFC mobiles :

  • Android : classe android.nfc dans le SDK Android natif. Bien documentée, supporte tous les types NDEF et la communication ISO-DEP pour les puces avancées.
  • iOS : framework CoreNFC depuis iOS 11 pour la lecture, iOS 13 pour l'écriture. Plus restrictif qu'Android — certaines fonctions avancées ne sont pas accessibles.
  • React Native / Flutter : librairies tierces (react-native-nfc-manager, flutter_nfc_kit) permettent le développement cross-platform.

Lecteur NFC de bureau + application PC

Pour les volumes importants avec des postes de programmation fixes, un lecteur NFC USB de bureau (ACR122U, SCL3711, Identiv uTrust…) connecté à un PC offre une solution plus ergonomique qu'un smartphone. La programmation est pilotée par une application PC via PC/SC (interface standard pour les lecteurs de cartes à puce et tags NFC).

Vous déployez des tags NFC dans un processus industriel ? Wintag peut livrer des tags NFC pré-programmés selon vos spécifications — prêts à être fixés sur vos actifs sans aucun équipement d'encodage de votre côté.
Demander des échantillons

Cas d'usage industriels

Maintenance sur équipements industriels

Un tag NTAG216 (888 octets) est fixé sur chaque machine. L'URL encodée dans le tag pointe vers la fiche de l'équipement dans la GMAO (ex : https://gmao.usine.fr/equipment/EQ-4521). Quand le technicien approche son téléphone, la fiche s'ouvre avec l'historique des interventions, les pièces de rechange associées et la prochaine date de maintenance préventive. La programmation initiale est faite par le service méthodes via NFC Tools Pro.

Anti-contrefaçon produits premium

Chaque produit intègre un tag NTAG424 DNA (puce avec génération de code unique CMAC à chaque lecture). L'URL encode une requête cryptographique unique envoyée à un serveur d'authentification. Le serveur valide la signature et confirme l'authenticité du produit. La programmation est faite en production sur un poste dédié avec lecteur NFC USB et application PC propriétaire.

Gestion des équipements de protection individuelle (EPI)

Chaque EPI (harnais, casque, gants de sécurité) porte un tag NFC encodé avec l'URL de sa fiche d'inspection. Chaque technicien qui utilise l'EPI scanne le tag avec son téléphone et valide la conformité (état visuel, date de mise en service, prochaine inspection). Les données sont enregistrées dans le système de gestion des EPI. La programmation est faite lors de la mise en service de l'EPI par le responsable HSE.

Questions fréquentes sur la programmation NFC

Mon iPhone peut-il programmer des tags NFC ?

Oui, à partir de l'iPhone 7 avec iOS 13+, en utilisant une application dédiée (NFC Tools pour iOS, par exemple). La programmation native sans application (depuis l'interface iOS directement) n'est pas disponible. Attention : la portée NFC de l'iPhone est plus courte que celle de la plupart des Android — il faut approcher le téléphone très près du tag (< 5 cm) pour écrire de manière fiable.

Combien de caractères peut-on stocker dans un tag NTAG213 ?

Un NTAG213 dispose de 144 octets de mémoire utilisateur. En pratique, après les octets d'en-tête NDEF, il reste environ 137 octets disponibles pour les données. Pour une URL NDEF, le format prend quelques octets d'en-tête supplémentaires — comptez ~130 caractères maximum pour une URL. Si vous avez besoin de plus d'espace, passez à NTAG215 (504 octets) ou NTAG216 (888 octets).

Peut-on stocker plusieurs enregistrements dans un même tag NFC ?

Oui — un message NDEF peut contenir plusieurs enregistrements. Par exemple, une URL + un texte descriptif. La plupart des applications NFC lisent le premier enregistrement et l'exécutent (ouvrent l'URL). Le comportement pour les enregistrements supplémentaires dépend de l'application de lecture. En pratique, pour les applications industrielles, un seul enregistrement URL est presque toujours suffisant et évite les comportements imprévisibles.

Comment faire lire un tag NFC automatiquement à l'approche du téléphone (sans ouvrir d'app) ?

Sur Android : la lecture en arrière-plan est active par défaut quand le NFC est activé. Le tag est lu automatiquement et le navigateur s'ouvre si une URL est encodée. Sur iPhone : il faut iOS 13+ et que l'URL soit en HTTPS. Sur iPhone XS/XR et plus récent sous iOS 14+, la lecture peut se faire même depuis l'écran de verrouillage. Sur les iPhones plus anciens (7, 8, X), la lecture nécessite d'ouvrir l'application NFC Tools ou similaire en premier plan.

Que se passe-t-il si on essaie de réécrire un tag verrouillé ?

L'écriture échoue silencieusement ou avec une erreur selon l'application utilisée. Le tag et son contenu restent intacts. NFC Tools affiche un message d'erreur « Tag Read Only » ou similaire. Aucun dommage n'est causé au tag — il reste pleinement lisible, seulement plus modifiable.

Ressources liées

Vous cherchez des tags RFID pour un projet spécifique ?

Wintag conçoit des solutions sur mesure. Décrivez votre application et recevez une évaluation technique sous 24 heures ouvrées — sans engagement.



Un projet RFID ?
Parlons-en.

Décrivez votre besoin et un ingénieur Wintag vous répondra dans les 24 heures avec une évaluation concrète — sans engagement.

Réponse sous 24 heures ouvrées
Consultation technique directe, sans intermédiaires
Devis personnalisé gratuit
ou
Réserver un appel Teams — 30 min