Existe-t-il un moyen de modifier le nom du package du projet Flutter?
Je souhaite modifier le nom du package et le nom de l'application dans le projet Flutter.
flutter create --org com.domain app_name
Existe-t-il un moyen de modifier le nom du package du projet Flutter?
Je souhaite modifier le nom du package et le nom de l'application dans le projet Flutter.
flutter create --org com.domain app_name
Réponses:
Pour le nom de l'application Android
Modifiez le nom de l'étiquette dans votre AndroidManifest.xmlfichier:
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
Pour le nom du package
Modifiez le nom du package dans votre AndroidManifest.xmlfichier:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
Également dans votre build.gradlefichier 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, modifiez le package dans votre MainActivity.javaclasse (si MainActivity.java n'est pas disponible, vérifiez 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 {
Modifiez le nom du répertoire:
De:
android\app\src\main\java\com\example\name
À:
android\app\src\main\java\your\package\name
RÉVISÉ: 27-déc-18
pour le nom du paquet juste changer dans la construction build.gradleseulement
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Pour iOS
Modifiez l'identifiant du bundle à partir de votre Info.plistfichier dans votre ios/Runnerrépertoire.
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
METTRE À JOUR
Pour éviter de renommer le package et l'identifiant du bundle, vous pouvez démarrer votre projet en utilisant cette commande dans votre terminal:
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER). Où se cache cette variable?
Changer le nom manuellement ne semble pas fonctionner, génère des erreurs de gradation, eh bien dans mon cas, cela génère une erreur.
Je crée donc généralement un nouveau projet de flutter.
J'utilise la commande mentionnée ci-dessous pour créer une nouvelle application de flutter
flutter create --org com.yourdomain appname
votre projet aura le nom du package comme -> com.yourdomain.appname
si vous souhaitez simplement conserver le nom de votre package, com.appnameapportez les modifications ci-dessous
flutter create --org com appname
pour ajouter java au lieu de kotlinpour androidajouter-a java
flutter create -a java --org com.yourdomain appname
Sous Android, le nom du package se trouve dans le fichier AndroidManifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
Sous iOS, le nom du package est l'identifiant du bundle dans Info.plist:
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
qui se trouve dans Runner.xcodeproj / project.pbxproj :
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
Le nom du package se trouve à plusieurs emplacements, donc pour changer le nom, vous devez rechercher dans tout le projet les occurrences de votre ancien nom de projet et les changer toutes.
Android Studio et VS Code:
Merci à diegoveloper pour son aide avec iOS.
Après être revenu sur cette page à plusieurs reprises, je pense qu'il est juste plus facile et plus propre de démarrer un nouveau projet avec le bon nom, puis de copier les anciens fichiers.
Pour ceux comme moi qui n'aiment pas modifier des fichiers spécifiques, j'ai utilisé https://pub.dev/packages/rename .
Installation: pub global activate rename
Et puis, en cours d'exécution: pub global run rename --bundleId com.example.android.app --target android
Voici comment j'ai renommé le package pour iOS et Android
applicationId "com.company.name"app/src/mainet renommez package="com.company.name"etandroid:label="App Name"app/src/debuget renommezpackage="com.company.name"app/src/profileet renommezpackage="com.company.name"app/src/main/kotlin/com/something/something/MainActivity.ktet renommerpackage="com.company.name"app/src/main/kotlin/et renommez chaque répertoire pour que la structure ressemble àapp/src/main/kotlin/com/company/name/pubspec.yamldans votre projet et changez name: somethingen name: name, exemple: - si le nom du package est com.abc.xyzlename: xyzcom.company.nameflutter cleanmodifier tous les fichiers AndroidManifest.xml de votre projet Flutter, -> package = "your.name.app " (app / src / debug / AndroidManifest.xml ) et (app / src / main / AndroidManifest.xml ) et (app / src / profile / AndroidManifest.xml )
bonne apparence !!
Selon la documentation officielle de Flutter, il vous suffit de changer le répertoire ApplicationIdin app/build.gradle. Ensuite, vous devez simplement créer votre apk et le nom du package du fichier manifeste sera modifié en fonction de celui que ApplicationIdvous avez modifié build.gradle. En raison du scintillement lors de la construction d'un apk et d'un google play, les deux ApplicationIdprennent en compte build.gradle. Cette solution a fonctionné pour moi.
source: Documentation officielle
Mis à jour Vous devez changer le nom du package en nom de package souhaité dans ces cinq emplacements.
1.) src/profile/AndroidManifest.xml
2.) src/debug/AndroidManifest.xml
3.) src/main/AdroidManifest.xml
4.) build.gradle .
defaultConfig {
applicationId
5.) MainActivity.java on "package"
la dernière étape est de courir flutter clean
Vous pouvez suivre cette documentation officielle de Google: https://developer.android.com/studio/build/application-id.html
L'ID d'application doit être modifié dans Build.gradle, tandis que le nom du package peut être modifié dans AndroidManifest.xml.
Cependant, il faut faire attention en changeant le nom du package.
De plus, lors du téléchargement de l'application, il faut faire attention car elle correspond à l'ID d'application de l'application précédemment téléchargée avec le nouveau téléchargement.
Sous Android, modifiez l'identifiant de l'application dans
> build.gradle
changement de fichier et iOS
> nom du bundle à partir des paramètres du projet.
Même si ma réponse ne sera pas acceptée comme la bonne réponse, je pense juste que toutes ces réponses ci-dessus m'ont causé plus de problèmes, voici comment je l'ai résolu
Conclusion: un simple programme de recherche et de remplacement est tout ce dont vous avez besoin pour résoudre ce problème, et je recommande vivement Sublime Text 3 pour cela.