Pourquoi changer le nom ou le bundle ID d’une application Flutter ?
Lorsque vous connectez votre application Flutter à une base de données Firebase, il vous sera demandé de renseigner un bundle ID. Ce dernier sert d’identifiant unique pour votre application. Il joue un rôle essentiel dans plusieurs cas :
- Lors de la connexion à Firebase, le bundle ID agit comme une signature pour relier votre application Flutter à ses services backend.
- Lors de la publication de votre application sur les stores Android (Google Play Store) ou iOS (App Store), cet identifiant est requis pour certifier l’unicité de l’application.
Par défaut, un bundle ID est généré automatiquement lorsque vous créez votre projet Flutter. Il suit une convention telle que : com.example.nom_du_fichier
. Bien que vous puissiez conserver cet identifiant, il est fortement recommandé de le personnaliser pour refléter le nom et la structure de votre application. Par exemple, si votre application s’appelle MonApp, un bundle ID approprié pourrait être : com.monapp.app
.
Important : Si vous prévoyez d’utiliser Firebase, il est préférable de personnaliser votre bundle ID avant de connecter l’application. Bien qu’il soit possible de modifier cet identifiant plus tard, cela vous demandera de reparamétrer votre projet.
Comment activer le package Rename ?
La manière la plus simple de changer le nom ou le bundle ID à travers tous les fichiers de votre application est d’utiliser le package rename. Contrairement à la plupart des packages qui demandent d’être importés, celui-ci s’active simplement depuis le terminal de commande de votre application.
Voici les étapes d’activation :
1. Installer le package Rename : Dans votre terminal, exécutez la commande suivante :
dart pub global activate rename
2. Configurer le chemin d’accès : Ajoutez le chemin d’accès au binaire de Rename pour pouvoir utiliser la commande dans tous vos projets Flutter. Utilisez cette commande :
export PATH="$PATH":"$HOME/.pub-cache/bin"
3. Vérification : Une fois le package installé et configuré, testez-le avec la commande suivante :
rename help
Cela affichera une liste des commandes disponibles.
Les commandes principales du package Rename
Le package Rename offre plusieurs commandes pour gérer le nom et le bundle ID de votre application. Voici un guide détaillé pour chaque commande.
Afficher le nom de l’application
Pour récupérer le nom actuel de votre application sur une ou plusieurs plateformes, utilisez la commande suivante :
rename getAppName --targets ios,android,macos,windows,linux
Vous pouvez préciser une seule plateforme si besoin :
rename getAppName --targets ios
Renommer l’application
Pour modifier le nom de votre application, utilisez la commande suivante :
rename setAppName --targets ios,android,macos,windows,linux --value "YourAppName"
Cette commande mettra à jour le nom de l’application pour les différentes plateformes. Remplacez "NouveauNomApp"
par le nom souhaité.
Afficher le bundle ID
Pour afficher le bundle ID de votre application, exécutez cette commande :
rename getBundleId --targets ios,android,macos,windows,linux
Ou pour une seule plateforme :
rename getBundleId --targets android
Modifier le bundle ID
Pour changer le bundle ID de votre application, utilisez cette commande :
rename setBundleId --targets ios,android,macos,windows,linux --value "com.mon_app.app"
Remplacez "com.nouveau.nom"
par le nouveau bundle ID souhaité.
Exemple : Si votre application s’appelle « SuperApp », vous pouvez utiliser com.superapp.app
.
Si vous souhaitez modifier le bundle ID uniquement pour une plateforme (par exemple, iOS), utilisez les commandes suivantes :
- Changer le bundle ID pour iOS uniquement :
rename setBundleId --targets ios --value "com.nouveau.nom"
- Modifier le bundle ID pour Android uniquement :
rename setBundleId --targets android --value "com.nouveau.nom"
Limitations et précautions
Problèmes sur Windows : Si vous rencontrez des erreurs sur Windows, essayez d’exécuter les commandes avec Flutter ou Dart directement :
flutter pub run rename <commande>
Compatibilité avec les flavors : Ce package peut ne pas être compatible avec les configurations utilisant des « flavors » dans Flutter.
Mises à jour : L’API du package a subi des modifications importantes. Assurez-vous de suivre la documentation officielle pour éviter les commandes dépréciées.