Comment créer des widgets d'écran d'accueil dans Flutter avec HomeWidget et Back4App
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.
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.
- 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.
Ouvrez votre terminal et exécutez :
Naviguez vers le répertoire du projet :
Ouvrez pubspec.yaml et ajoutez les dépendances suivantes :
Exécutez flutter pub get pour installer les paquets.
- Cliquez sur "Créer une nouvelle application".
- Entrez un nom pour votre application, par exemple, "HomeWidgetApp", et cliquez sur "Créer".
- Dans le tableau de bord de votre application, accédez à la "Base de données" section.
- Cliquez sur "Créer une classe".
- Dans la fenêtre modale:
- Sélectionnez "Personnalisé".
- Entrez "Message" comme nom de la classe.
- Cliquez sur "Créer la classe".
- Dans la classe "Message" , cliquez sur "+" pour ajouter une nouvelle colonne.
- Ajoutez les colonnes suivantes:
- titre: Type Chaîne
- contenu: Type Chaîne
- Ajoutez quelques données d'exemple à la "Message" classe. Par exemple:
- Accédez à Paramètres de l'application > Sécurité et clés.
- Notez votre ID d'application et votre Clé client.
Ouvrez lib/main.dart et modifiez-le comme suit :
- Remplacez 'YOUR_APPLICATION_ID' et 'YOUR_CLIENT_KEY' par vos véritables identifiants Back4App.
Créer un nouveau fichier lib/home_page.dart:
- 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.
Créez un nouveau fichier de mise en page XML dans android/app/src/main/res/layout/ nommé home_widget.xml:
Créez une nouvelle classe Java dans android/app/src/main/java/your/package/name/ nommée HomeWidgetProvider.java:
Remplacez your.package.name par votre nom de package réel.
Ajoutez le fournisseur de widget à votre AndroidManifest.xml:
Créez un nouveau fichier XML dans android/app/src/main/res/xml/ nommé home_widget_info.xml:
- Ouvrez votre projet Flutter dans Xcode en ouvrant ios/Runner.xcworkspace.
- Cliquez sur Fichier > Nouveau > Cible.
- Choisissez Extension de widget et cliquez sur Suivant.
- Entrez HomeWidget comme nom du produit et assurez-vous que Inclure l'intention de configuration est décoché.
- Cliquez sur Terminer et Activez le schéma.
Dans l'extension HomeWidget , ouvrez HomeWidget.swift et modifiez-le :
- Remplacez YOUR_GROUP_ID par l'identifiant de votre groupe d'applications (par exemple, group.com.example.homeWidgetApp).
- Dans Xcode, sélectionnez votre projet et allez à Signing & Capabilities.
- Ajoutez "App Groups" à la fois à votre cible d'application principale et à l'extension de widget.
- Créez un nouveau groupe d'applications (par exemple, group.com.example.homeWidgetApp).
- Assurez-vous que les deux cibles ont le même groupe d'applications activé.
Dans votre updateHomeWidget() méthode dans home_page.dart, mettez à jour les noms des widgets:
Dans votre terminal, exécutez :
- Appuyez longuement sur l'écran d'accueil et sélectionnez "Widgets".
- Trouvez votre application dans la liste des widgets.
- Faites glisser et déposez le widget sur votre écran d'accueil.
- Entrez le mode jiggle en appuyant longuement sur l'écran d'accueil.
- Appuyez sur le "+" bouton dans le coin supérieur gauche.
- Recherchez votre widget par nom.
- Ajoutez le widget à votre écran d'accueil.
- 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.
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.
- 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.
Bon codage !