501 votes

Comment changer le nom du paquet dans flutter ?

Existe-t-il un moyen de changer le nom du paquet du projet Flutter ?

Je veux changer le nom du paquet et le nom de l'application dans le projet Flutter.

8 votes

Il suffit de rechercher et de remplacer toutes les occurrences de l'ancien nom de paquet dans tous les fichiers. Il n'y a pas encore de commande ou similaire pour mettre à jour le nom.

22 votes

Lorsque vous créez un nouveau projet, vous pouvez spécifier le nom du paquet avec flutter create --org com.domain app_name

0 votes

709voto

diegoveloper Points 24042

Pour Android Nom de l'application

Changez le nom de l'étiquette dans votre AndroidManifest.xml fichier :

 <application
    android:name="io.flutter.app.FlutterApplication"
    android:label="TheNameOfYourApp"   

Pour le nom du paquet

Changez le nom du paquet dans votre AndroidManifest.xml (dans 3 d'entre eux, dossiers : main, debug et profile, selon l'environnement que vous voulez déployer) :

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="your.package.name">

Également dans votre build.gradle dans le dossier de l'application

defaultConfig {
    applicationId "your.package.name"
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

Enfin, changez le paquet dans votre MainActivity.java (si la classe MainActivity.java n'est pas disponible, vérifiez la classe MainActivity.kt)

    package your.package.name;

    import android.os.Bundle;
    import io.flutter.app.FlutterActivity;
    import io.flutter.plugins.GeneratedPluginRegistrant;
    public class MainActivity extends FlutterActivity {

Changez le nom du répertoire :

De :

  android\app\src\main\java\com\example\name

A :

  android\app\src\main\java\your\package\name

EDITION : 27-Dec-18

pour nom du paquet juste un changement dans la construction build.gradle uniquement

defaultConfig {
    applicationId "your.package.name"
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

Pour iOS

Changez l'identifiant du paquet de votre Info.plist à l'intérieur de votre ios/Runner répertoire.

<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>

UPDATE

Pour éviter de renommer l'identifiant du paquet et du bundle, vous pouvez démarrer votre projet en utilisant cette commande dans votre terminal :

flutter create --org com.yourdomain appname

2 votes

J'ai également dû mettre à jour le nom du répertoire ci-dessous (en remplaçant 'exemple' par 'bois'). C:\Users\andytwoods\IdeaProjects\gear_log\android\app\src\ma sur \java\com\woods\ge arlogue

1 votes

Et pour iOS ?

1 votes

@Suragch changer l'identifiant du paquet de votre fichier Info.plist

152voto

Vicky Salunkhe Points 68

Changer le nom manuellement n'a pas l'air de fonctionner, cela provoque des erreurs de gradle, enfin dans mon cas, cela provoque une erreur.

Je crée donc habituellement un nouveau projet flutter.

J'utilise la commande ci-dessous pour créer une nouvelle application Flutter.

flutter create --org com.yourdomain appname

votre projet aura le nom du paquet comme -> com.yourdomain.appname


si vous souhaitez simplement conserver le nom de votre paquet en tant que com.appname puis faites quelques changements comme ci-dessous

flutter create --org com appname

pour ajouter java au lieu de kotlin pour android ajouter -a java

flutter create -a java --org com.yourdomain appname

EDIT


Si vous avez déjà créé un projet vous pouvez utiliser change_app_package_name pour changer le nom du paquet.

flutter pub run change_app_package_name:main com.package.appname

2 votes

Et c'est assez rapide aussi

7 votes

Flutter create --org com.yourcompany --project-name new_app_name .' (ajoutez le point si vous êtes à l'intérieur du projet existant -- vous devez d'abord détruire les dossiers Android et ios pour les régénérer). FAIRE UNE SAUVEGARDE devrait être une condition préalable importante pour la réponse.

0 votes

Vous pouvez créer un nouveau projet et copier les dépendances pubspec.yaml, exécuter pub get, puis copier vos fichiers dart depuis le dossier lib.

53voto

Suragch Points 197

Android

Dans Android, le nom du paquet se trouve dans l'AndroidManifest :

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    package="com.example.appname">

iOS

Dans iOS, le nom du paquet est l'identifiant du paquet dans Info.plist :

<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>

qui se trouve dans Runner.xcodeproj/projet.pbxproj :

PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;

Changement de nom

Le nom du paquet se trouve à plusieurs endroits, donc pour changer le nom, vous devez rechercher dans l'ensemble du projet les occurrences de votre ancien nom de projet et les changer toutes.

Android Studio et VS Code :

  • Mac : Command + Shift + F
  • Linux/Windows : Ctrl + Shift + F

_Merci à diegoveloper pour obtenir de l'aide sur iOS._

Mise à jour :

Après être revenu plusieurs fois sur cette page, je pense qu'il est plus simple et plus propre de commencer un nouveau projet avec le bon nom, puis de copier les anciens fichiers.

0 votes

Bonjour, j'ai une question. Ce n'est peut-être pas lié au sujet de Flutter mais comment puis-je pousser le projet renommé vers un projet actuel sur github si je crée un nouveau projet ?

1 votes

@Ooto, Vous pouvez supprimer l'ancien projet (sauf pour les .git à la racine) et ensuite mettre le nouveau projet dans le même répertoire que l'ancien. Ensuite, livrez et poussez les changements.

1 votes

Ça a marché ! J'ai essayé de créer un nouveau dépôt de modèles de chaudière, mais tout s'est bien passé.

30voto

Fa Kur Points 177

Changement name l'attribut dans pubspec.yaml (ligne 1)

Pour le nom de l'apk, changez android:label sur AndroidManifest.xml

2 votes

Une modification de MainActivity.java ou de mainActivity.kt est nécessaire.

9voto

Percy Rojas Points 61

Changement dans tous AndroidManifest.xml de votre projet Flutter, --> package="votre.nom.app " (app/src/debug/ AndroidManifest.xml ) et (app/src/main/ AndroidManifest.xml ) et (app/src/profile/ AndroidManifest.xml )

bon look ! !

0 votes

Merci Percy j'étais confronté à ce problème j'ai trouvé votre réponse.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X