Les QrCodes sont actuellement incontournables. Ils constituent un moyen simple et efficace d’améliorer l’expérience utilisateur, que ce soit en réalisant un lien entre le matériel et l’immatériel ( exemple de la domotique) ou encore un lien entre différents services numériques, voir plus globalement pour partager des informations entre différents acteurs.

Comment lire et générer des QrCodes ? Rien de plus simple grâce  à la bibliothèque ZXing .Net

1) Importation de ZXing


  • Créez un nouveau projet UWP

créer un projet

  • Installez la bibliothèque ZXing Mobile. Attention, il faut bien installer la version « Mobile » car elle implémente déjà la gestion de la caméra et la capture de l’image.

02

2) Capture d’un QrCode via la Caméra


  • Sur la MainPage on ajoute un bouton pour effectuer nos tests

 

  • On utilise la classe MobileBarcodeScanner afin de lancer en plein écran une page de capture vidéo via la caméra. Par défaut la caméra arrière est sélectionnée.
  • Pour lancer la capture, on appelle la méthode asynchrone sc.Scan()
  • Dans mon exemple, Mon QrCode contient un JSon de clés / valeurs, on désérialize la chaîne de caractères à l’aide de la bibliothèque JSon de Newtonsoft (qu’il faut importer via les packages NuGet).

 

  • Modifions maintenant les capabilities de notre application en lui donnant le droit d’accéder à la webcam et au microphone s’il est lié à votre webcam.

05

  • On lance notre application et on clique sur le bouton. La caméra se lance en plein écran, il suffit juste d’afficher un QrCode. Le design de la page de capture est personnalisable via la classe MobileBarcodeScanner.

06

  • Le QrCode est automatiquement capturé et le résultat est retourné sous forme de String. Dans notre cas, j’ai sérialisé un Json.

07

3) Création d’un QrCode à partir d’une chaîne de caractères


  • On Ajoute un contrôle Image à notre MainPage de taille 150 * 150. Ce contrôle va contenir l’image de notre QrCode.

 

  • On utilise la classe BarcodeWriter afin de générer notre image contenant le QrCode. On définit dans le constructeur la taille de notre image. La classe peut générer plusieurs types de code-barres mais par défaut il s’agit de QrCode. Pour finir, on lie notre image au contrôle Image.

 

10

Possibilités d’évolution


Vous pouvez générer un QrCode pour permettre à vos amis de se connecter très facilement à votre réseau wifi. En domotique, on peut utiliser cette technique pour connecter un raspberry via la caméra.
Vous pouvez également l’ utiliser pour synchroniser une application mobile avec une application desktop voir ouvrir la porte de chez-vous pour rester dans le thème de la domotique.