C'è un modo per cambiare il nome del pacchetto del progetto Flutter?
Voglio cambiare il nome del pacchetto e il nome dell'applicazione nel progetto Flutter.
flutter create --org com.domain app_name
C'è un modo per cambiare il nome del pacchetto del progetto Flutter?
Voglio cambiare il nome del pacchetto e il nome dell'applicazione nel progetto Flutter.
flutter create --org com.domain app_name
Risposte:
Per nome app Android
Cambia il nome dell'etichetta nel tuo AndroidManifest.xml
file:
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
Per il nome del pacchetto
Cambia il nome del pacchetto nel tuo AndroidManifest.xml
file:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
Anche nel tuo build.gradle
file all'interno della cartella dell'app
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Infine, modifica il pacchetto nella tua MainActivity.java
classe (se MainActivity.java non è disponibile, controlla 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 {
Cambia il nome della directory:
A partire dal:
android\app\src\main\java\com\example\name
Per:
android\app\src\main\java\your\package\name
MODIFICATO: 27-dic-18
per nome del pacchetto basta cambiare in costruzione build.gradle
solo
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Per iOS
Cambia l'identificatore del bundle dal tuo Info.plist
file all'interno della tua ios/Runner
directory.
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
AGGIORNARE
Per evitare di rinominare il pacchetto e l'identificatore del bundle, puoi avviare il tuo progetto usando questo comando nel tuo terminale:
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER)
. Dove si nasconde quella variabile?
La modifica manuale del nome non sembra funzionare, genera errori di livello, bene nel mio caso genera un errore.
Quindi di solito creo un nuovo progetto flutter.
Uso il comando di seguito indicato per creare una nuova app Flutter
flutter create --org com.yourdomain appname
il tuo progetto avrà il nome del pacchetto come -> com.yourdomain.appname
se si desidera solo mantenere il nome del pacchetto come com.appname
quindi apportare alcune modifiche come di seguito
flutter create --org com appname
per aggiungere java anziché kotlin
per android
aggiungere-a java
flutter create -a java --org com.yourdomain appname
In Android il nome del pacchetto si trova in AndroidManifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
In iOS il nome del pacchetto è l'identificatore del bundle in Info.plist:
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
che si trova in Runner.xcodeproj / project.pbxproj :
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
Il nome del pacchetto si trova in più di una posizione, quindi per modificare il nome è necessario cercare nel progetto intero le occorrenze del vecchio nome del progetto e modificarle tutte.
Android Studio e codice VS:
Grazie a diegoveloper per l'aiuto con iOS.
Dopo essere tornato su questa pagina un paio di volte diverse, sto pensando che è solo più facile e più pulito avviare un nuovo progetto con il nome giusto e quindi copiare i vecchi file.
Per quelli come me a cui non piace cambiare file specifici, ho usato https://pub.dev/packages/rename .
Installazione: pub global activate rename
E poi, eseguendo: pub global run rename --bundleId com.example.android.app --target android
Ecco come ho rinominato il pacchetto sia per iOS che per Android
applicationId "com.company.name"
app/src/main
e rinomina package="com.company.name"
eandroid:label="App Name"
app/src/debug
e rinominapackage="com.company.name"
app/src/profile
e rinominapackage="com.company.name"
app/src/main/kotlin/com/something/something/MainActivity.kt
e rinominapackage="com.company.name"
app/src/main/kotlin/
e rinomina ogni directory in modo che assomigli alla strutturaapp/src/main/kotlin/com/company/name/
pubspec.yaml
nel tuo progetto e cambia name: something
in name: name
, esempio: - se il nome del pacchetto è com.abc.xyz
ilname: xyz
com.company.name
flutter clean
modifica in tutti i file AndroidManifest.xml del tuo progetto Flutter, -> package = "your.name.app " (app / src / debug / AndroidManifest.xml ) e (app / src / main / AndroidManifest.xml ) e (app / src / profile / AndroidManifest.xml )
bell'aspetto !!
Aggiornato È necessario modificare il nome del pacchetto con il nome del pacchetto desiderato in queste cinque posizioni.
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"
l'ultimo passo è correre flutter clean
Sul codice di Visual Studio
Modifica> Sostituisci in file
Su Android Studio
1. Fare clic con il tasto destro del mouse sul progetto> Sostituisci nel percorso
2. Scrivi il tuo vecchio pacchetto e il nuovo pacchetto> Sostituisci tutto
In base alla documentazione ufficiale di flutter è sufficiente cambiare la ApplicationId
in app/build.gradle
directory. Quindi devi solo creare il tuo apk e il nome del pacchetto del file manifest verrà modificato in base a quello che ApplicationId
hai modificato build.gradle
. A causa del flutter durante la creazione di un apk e Google Play entrambi considerano ApplicationId
da build.gradle. Questa soluzione ha funzionato per me.
fonte: documentazione ufficiale
Puoi seguire questa documentazione ufficiale di Google: https://developer.android.com/studio/build/application-id.html
L'ID applicazione deve essere modificato in Build.gradle, mentre il nome del pacchetto può essere modificato in AndroidManifest.xml.
Comunque si dovrebbe stare attenti a cambiare il nome del pacchetto.
Inoltre, durante il nuovo caricamento dell'app, è necessario fare attenzione poiché corrisponde all'ID dell'applicazione dell'app precedentemente caricata con il nuovo caricamento.
In Android, modifica l'ID applicazione in
> build.gradle
modifica di file e iOS
> nome del bundle dalle impostazioni del progetto.
Anche se la mia risposta non sarà accettata come la risposta corretta, sento solo che tutte queste risposte sopra mi hanno fatto avere più problemi qui è come l'ho risolto
Conclusione: è sufficiente un semplice programma di ricerca e sostituzione per risolvere questo problema e per questo consiglio vivamente Sublime Text 3.