More

Comment créer des widgets d'écran d'accueil dans Flutter avec HomeWidget et Back4App

31min

Introduction

Les widgets de l'écran d'accueil permettent aux utilisateurs d'accéder à des informations en temps réel de votre application directement sur l'écran d'accueil de leur appareil sans ouvrir l'application. Avec Flutter, la création de ces widgets nécessite un certain code spécifique à la plateforme. Cependant, le home_widget package comble cette lacune en permettant l'échange de données entre votre application Flutter et les widgets de l'écran d'accueil en utilisant du code Dart.

Dans ce tutoriel, vous apprendrez à créer un widget d'écran d'accueil dans Flutter en utilisant le home_widget package et à l'intégrer avec Back4App—un backend en tant que service alimenté par Parse Server. À la fin de ce tutoriel, vous aurez une application Flutter qui affiche des données de Back4App dans un widget d'écran d'accueil.

Prérequis

Pour compléter ce tutoriel, vous aurez besoin de :

  • Flutter SDK installé sur votre machine. Vous pouvez suivre le guide d'installation officiel de Flutter pour votre système d'exploitation.
  • Connaissances de base en Flutter et Dart. Si vous êtes nouveau sur Flutter, envisagez de consulter la documentation Flutter pour vous familiariser avec les bases.
  • Un IDE ou éditeur de texte tel que Visual Studio Code ou Android Studio.
  • Un compte Back4App. Inscrivez-vous pour un compte gratuit sur Back4App.
  • Parse Server SDK pour Flutter ajouté à votre projet. Vous pouvez apprendre à le configurer en suivant le Guide SDK Flutter de Back4App.
  • Configuration spécifique à la plateforme pour les widgets d'écran d'accueil Android et iOS.

Étape 1 – Configuration du projet Flutter

1.1. Créer un nouveau projet Flutter

Ouvrez votre terminal et exécutez :

Bash


Naviguez vers le répertoire du projet :

Bash


1.2. Ajouter des dépendances

Ouvrez pubspec.yaml et ajoutez les dépendances suivantes :

YAML


Exécutez flutter pub get pour installer les paquets.

Étape 2 – Configuration de Back4App

2.1. Créer une nouvelle application Back4App

  1. Connectez-vous à votre tableau de bord Back4App.
  2. Cliquez sur "Créer une nouvelle application".
  3. Entrez un nom pour votre application, par exemple, "HomeWidgetApp", et cliquez sur "Créer".

2.2. Configurer le modèle de données

  1. Dans le tableau de bord de votre application, accédez à la "Base de données" section.
  2. Cliquez sur "Créer une classe".
  3. Dans la fenêtre modale:
    • Sélectionnez "Personnalisé".
    • Entrez "Message" comme nom de la classe.
    • Cliquez sur "Créer la classe".

2.3. Ajouter des colonnes à la classe

  1. Dans la classe "Message" , cliquez sur "+" pour ajouter une nouvelle colonne.
  2. Ajoutez les colonnes suivantes:
    • titre: Type Chaîne
    • contenu: Type Chaîne
  3. Ajoutez quelques données d'exemple à la "Message" classe. Par exemple:

2.4. Obtenir les identifiants de l'application

  1. Accédez à Paramètres de l'application > Sécurité et clés.
  2. Notez votre ID d'application et votre Clé client.

Étape 3 – Initialisation de Parse dans votre application Flutter

Ouvrez lib/main.dart et modifiez-le comme suit :

Dart

  • Remplacez 'YOUR_APPLICATION_ID' et 'YOUR_CLIENT_KEY' par vos véritables identifiants Back4App.

Étape 4 – Récupération des données depuis Back4App

Créer un nouveau fichier lib/home_page.dart:

Dart


Explication

  • Classe de Message: Une classe modèle simple pour contenir les données du message.
  • fetchMessage(): Récupère les données de la Message classe dans Back4App et met à jour la variable message.
  • updateHomeWidget(): Enregistre les données récupérées dans le widget de l'écran d'accueil en utilisant HomeWidget.saveWidgetData et déclenche une mise à jour en utilisant HomeWidget.updateWidget.
  • build(): Affiche les données du message et un bouton pour rafraîchir le message.

Étape 5 – Configuration du Widget de l'Écran d'Accueil

5.1. Configuration Android

5.1.1. Créer la mise en page du widget

Créez un nouveau fichier de mise en page XML dans android/app/src/main/res/layout/ nommé home_widget.xml:

XML


5.1.2. Créer le fournisseur de widget

Créez une nouvelle classe Java dans android/app/src/main/java/your/package/name/ nommée HomeWidgetProvider.java:

Java


Remplacez your.package.name par votre nom de package réel.

5.1.3. Mettre à jour le manifeste Android

Ajoutez le fournisseur de widget à votre AndroidManifest.xml:

XML


5.1.4. Créer le fichier d'informations du widget XML

Créez un nouveau fichier XML dans android/app/src/main/res/xml/ nommé home_widget_info.xml:

XML


5.2. Configuration iOS

5.2.1. Créer une extension de widget

  1. Ouvrez votre projet Flutter dans Xcode en ouvrant ios/Runner.xcworkspace.
  2. Cliquez sur Fichier > Nouveau > Cible.
  3. Choisissez Extension de widget et cliquez sur Suivant.
  4. Entrez HomeWidget comme nom du produit et assurez-vous que Inclure l'intention de configuration est décoché.
  5. Cliquez sur Terminer et Activez le schéma.

5.2.2. Mettre à jour le code du widget

Dans l'extension HomeWidget , ouvrez HomeWidget.swift et modifiez-le :

Swift

  • Remplacez YOUR_GROUP_ID par l'identifiant de votre groupe d'applications (par exemple, group.com.example.homeWidgetApp).

5.2.3. Configurer les groupes d'applications

  1. Dans Xcode, sélectionnez votre projet et allez à Signing & Capabilities.
  2. Ajoutez "App Groups" à la fois à votre cible d'application principale et à l'extension de widget.
  3. Créez un nouveau groupe d'applications (par exemple, group.com.example.homeWidgetApp).
  4. Assurez-vous que les deux cibles ont le même groupe d'applications activé.

5.3. Mettre à jour le code Flutter pour les configurations spécifiques à la plateforme

Dans votre updateHomeWidget() méthode dans home_page.dart, mettez à jour les noms des widgets:

Dart


Étape 6 – Exécution de l'application et test du widget

6.1. Exécuter l'application

Dans votre terminal, exécutez :

Bash


6.2. Ajouter le widget à votre écran d'accueil

Android

  1. Appuyez longuement sur l'écran d'accueil et sélectionnez "Widgets".
  2. Trouvez votre application dans la liste des widgets.
  3. Faites glisser et déposez le widget sur votre écran d'accueil.

iOS

  1. Entrez le mode jiggle en appuyant longuement sur l'écran d'accueil.
  2. Appuyez sur le "+" bouton dans le coin supérieur gauche.
  3. Recherchez votre widget par nom.
  4. Ajoutez le widget à votre écran d'accueil.

6.3. Mises à jour des données de test

  • Appuyez sur le "Bouton de rafraîchissement" dans votre application pour récupérer de nouvelles données depuis Back4App.
  • Le widget sur votre écran d'accueil devrait se mettre à jour avec les nouvelles données.

Conclusion

Dans ce tutoriel, vous avez appris à créer un widget d'écran d'accueil dans Flutter en utilisant le home_widget package et à l'intégrer avec Back4App pour afficher des données dynamiques. Cela vous permet de fournir aux utilisateurs des informations à jour directement sur leurs écrans d'accueil, améliorant ainsi l'engagement et l'expérience utilisateur.

Prochaines étapes

  • Données dynamiques: Implémentez des mises à jour de données en temps réel en utilisant les requêtes en direct de Back4App.
  • Interactivité: Ajoutez des actions de clic à votre widget pour ouvrir des pages spécifiques dans votre application.
  • Personnalisation: Stylisez votre widget pour qu'il corresponde au thème et au design de votre application.

Ressources supplémentaires

Bon codage !