Po prostu wyszukaj i zamień wszystkie wystąpienia starej nazwy pakietu we wszystkich plikach. Nie ma jeszcze polecenia ani podobnego do zaktualizowania nazwy.
Günter Zöchbauer
7
Podczas tworzenia nowego projektu możesz określić nazwę pakietu za pomocąflutter create --org com.domain app_name
'flutter create --org com.twojafirma - nazwa-projektu nowa_nazwa_aplikacji.' (dodaj okres, jeśli jesteś w istniejącym projekcie - powinieneś najpierw wyrzucić foldery android i ios, aby je zregenerować). MAKE A BACKUP powinno być ważnym warunkiem udzielenia odpowiedzi.
Tommie C.
możesz stworzyć nowy projekt, a następnie po prostu skopiować zależności pubspec.yaml, uruchomić pub get, a następnie skopiować pliki dart z folderu lib
który znajduje się w Runner.xcodeproj / project.pbxproj :
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
Zmiana nazwy
Nazwa pakietu znajduje się w więcej niż jednej lokalizacji, więc aby zmienić nazwę, należy przeszukać cały projekt pod kątem wystąpień nazwy starego projektu i zmienić je wszystkie.
Po kilkukrotnym powrocie na tę stronę myślę, że po prostu łatwiej i czyściej jest rozpocząć nowy projekt o właściwej nazwie, a następnie skopiować stare pliki.
Cześć mam pytanie. Może to nie być związane z tematem Flutter, ale jak mogę przekazać projekt o zmienionej nazwie do bieżącego projektu na github, jeśli utworzę nowy projekt?
Ooto
@Ooto, możesz usunąć stary projekt (z wyjątkiem .gitkatalogu w katalogu głównym), a następnie umieścić nowy projekt w tym samym katalogu, co stary. Następnie zatwierdź i prześlij zmiany.
Suragch
20
Zmiana name atrybut w pubspec.yaml (wiersz 1)
Aby uzyskać nazwę apk, zmień android:label wAndroidManifest.xml
Dzięki Percy. Miałem ten problem. Znalazłem twoją odpowiedź.
Deweloper
6
Zgodnie z oficjalną dokumentacją fluttera wystarczy zmienić katalog ApplicationIdin app/build.gradle. Następnie musisz po prostu zbudować swój apk, a nazwa pakietu pliku manifestu zostanie zmieniona zgodnie ze ApplicationIdzmianą w build.gradle. Z powodu trzepotania podczas budowania apk i Google Play oba rozważają ApplicationIdz build.gradle. To rozwiązanie zadziałało dla mnie.
Identyfikator aplikacji należy zmienić w Build.gradle, natomiast nazwę pakietu można zmienić w AndroidManifest.xml.
Należy jednak uważać przy zmianie nazwy pakietu.
Również podczas ponownego przesyłania aplikacji należy zachować ostrożność, ponieważ jest ona zgodna z identyfikatorem aplikacji poprzednio przesłanej aplikacji przy nowym przesłaniu.
Nawet jeśli moja odpowiedź nie zostanie zaakceptowana jako poprawna, po prostu czuję, że wszystkie powyższe odpowiedzi spowodowały, że mam więcej problemów, oto jak to naprawiłem
Uzyskaj wysublimowany tekst (szalony, prawda? Nie, po prostu wykonaj moje kroki)
Kliknij plik i wybierz otwarty folder, a następnie wybierz folder projektu, nad którym pracujesz
Teraz kliknij Znajdź w zakładkach i wybierz znajdź w plikach lub po prostu zrób Ctrl+ Shift+F (dla użytkowników Windows, dla użytkowników Mac, którzy już znasz wiertło)
Teraz skopiuj i wklej dokładnie nazwę pakietu, który chcesz zmienić w sekcji Znajdź i wklej w sekcji zamiany tym, czym chcesz zastąpić nazwę pakietu.
Kliknij ZNAJDŹ (jeszcze nie klikaj WYMIEŃ).
Teraz kliknięcie przycisku Znajdź powoduje wyświetlenie wszystkich dostępnych nazw pakietów w Twoim projekcie, które spełniają kryteria wyszukiwania. Jeśli jesteś z tego zadowolony, powtórz od nr. 3, ale tym razem kliknij WYMIEŃ.
Przebuduj swój projekt i baw się dobrze
Wniosek: prosty program do znajdowania i zamieniania to wszystko, czego potrzebujesz, aby rozwiązać ten problem, i zdecydowanie polecam do tego Sublime Text 3.
flutter create --org com.domain app_name
Odpowiedzi:
Nazwa aplikacji na Androida
Zmień nazwę etykiety w
AndroidManifest.xml
pliku:<application android:name="io.flutter.app.FlutterApplication" android:label="TheNameOfYourApp"
Nazwa pakietu
Zmień nazwę pakietu w swoim
AndroidManifest.xml
pliku:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="your.package.name">
Również w
build.gradle
pliku w folderze aplikacjidefaultConfig { applicationId "your.package.name" minSdkVersion 16 targetSdkVersion 27 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" }
Na koniec zmień pakiet w swojej
MainActivity.java
klasie (jeśli plik MainActivity.java nie jest dostępny, sprawdź plik 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 {
Zmień nazwę katalogu:
Z:
Do:
EDYTOWANO: 27 grudnia 18
do nazwy pakietu wystarczy zmienić w kompilacji
build.gradle
tylkodefaultConfig { applicationId "your.package.name" minSdkVersion 16 targetSdkVersion 27 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" }
Na iOS
Zmień identyfikator pakietu z
Info.plist
pliku wios/Runner
katalogu.AKTUALIZACJA
Aby uniknąć zmiany nazwy pakietu i identyfikatora pakietu, możesz rozpocząć projekt za pomocą tego polecenia w terminalu:
źródło
$(PRODUCT_BUNDLE_IDENTIFIER)
. Gdzie ukrywa się ta zmienna?Ręczna zmiana nazwy wydaje się nie działać, generuje błędy gradle, w moim przypadku generuje błąd.
Dlatego zazwyczaj tworzę nowy projekt trzepoczący.
Używam poniższego polecenia, aby utworzyć nową aplikację flutter
Twój projekt będzie miał nazwę pakietu jako ->
com.yourdomain.appname
jeśli chcesz tylko zachować nazwę swojego pakietu, a
com.appname
następnie wprowadź zmiany, jak poniżejaby dodać java zamiast
kotlin
forandroid
add-a java
źródło
Dla takich jak ja, którzy nie lubią zmieniać określonych plików, użyłem https://pub.dev/packages/rename .
Instalowanie:
pub global activate rename
A potem bieganie:
pub global run rename --bundleId com.example.android.app --target android
źródło
Android
W systemie Android nazwa pakietu znajduje się w pliku AndroidManifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... package="com.example.appname">
iOS
W iOS nazwa pakietu to identyfikator pakietu w Info.plist:
który znajduje się w Runner.xcodeproj / project.pbxproj :
Zmiana nazwy
Nazwa pakietu znajduje się w więcej niż jednej lokalizacji, więc aby zmienić nazwę, należy przeszukać cały projekt pod kątem wystąpień nazwy starego projektu i zmienić je wszystkie.
Android Studio i VS Code:
Podziękowania dla diegoveloper za pomoc przy iOS.
Aktualizacja:
Po kilkukrotnym powrocie na tę stronę myślę, że po prostu łatwiej i czyściej jest rozpocząć nowy projekt o właściwej nazwie, a następnie skopiować stare pliki.
źródło
.git
katalogu w katalogu głównym), a następnie umieścić nowy projekt w tym samym katalogu, co stary. Następnie zatwierdź i prześlij zmiany.Zmiana
name
atrybut wpubspec.yaml
(wiersz 1)Aby uzyskać nazwę apk, zmień
android:label
wAndroidManifest.xml
źródło
W ten sposób zmieniłem nazwę pakietu na iOS i Android
applicationId "com.company.name"
app/src/main
i zmień jego nazwępackage="com.company.name"
iandroid:label="App Name"
app/src/debug
i zmień jego nazwępackage="com.company.name"
app/src/profile
i zmień jego nazwępackage="com.company.name"
app/src/main/kotlin/com/something/something/MainActivity.kt
i zmień nazwępackage="com.company.name"
app/src/main/kotlin/
każdego katalogu i zmień jego nazwę, aby wyglądała jak strukturaapp/src/main/kotlin/com/company/name/
pubspec.yaml
swojego projektu i zmianname: something
doname: name
, przykładowo: - jeśli nazwa pakietu jestcom.abc.xyz
name: xyz
com.company.name
flutter clean
źródło
zmień wszystkie pliki AndroidManifest.xml projektu Flutter, -> package = "your.name.app " (app / src / debug / AndroidManifest.xml ) i (app / src / main / AndroidManifest.xml ) i (app / src / profile / AndroidManifest.xml )
dobry wygląd !!
źródło
Zgodnie z oficjalną dokumentacją fluttera wystarczy zmienić katalog
ApplicationId
inapp/build.gradle
. Następnie musisz po prostu zbudować swój apk, a nazwa pakietu pliku manifestu zostanie zmieniona zgodnie zeApplicationId
zmianą wbuild.gradle
. Z powodu trzepotania podczas budowania apk i Google Play oba rozważająApplicationId
z build.gradle. To rozwiązanie zadziałało dla mnie.źródło: Official Documentation
źródło
W kodzie programu Visual Studio
Edycja> Zamień w plikach
W studiu Android
1. Kliknij prawym przyciskiem myszy projekt> Zastąp w ścieżce
2. Wpisz stary pakiet i nowy pakiet> Zastąp wszystko
źródło
Zaktualizowano Musisz zmienić nazwę pakietu na żądaną nazwę pakietu w tych pięciu lokalizacjach.
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"
ostatnim krokiem jest bieganie
flutter clean
źródło
Miałem dwa pliki manifest.xml w sekcji mojej aplikacji, więc musiałem zmienić nazwę pakietu w obu
źródło
Możesz śledzić tę oficjalną dokumentację Google: https://developer.android.com/studio/build/application-id.html
Identyfikator aplikacji należy zmienić w Build.gradle, natomiast nazwę pakietu można zmienić w AndroidManifest.xml.
Należy jednak uważać przy zmianie nazwy pakietu.
Również podczas ponownego przesyłania aplikacji należy zachować ostrożność, ponieważ jest ona zgodna z identyfikatorem aplikacji poprzednio przesłanej aplikacji przy nowym przesłaniu.
źródło
W systemie Android zmień identyfikator aplikacji w
> build.gradle
plik i zmiana iOS
> nazwa pakietu z ustawień projektu.
źródło
Nawet jeśli moja odpowiedź nie zostanie zaakceptowana jako poprawna, po prostu czuję, że wszystkie powyższe odpowiedzi spowodowały, że mam więcej problemów, oto jak to naprawiłem
Wniosek: prosty program do znajdowania i zamieniania to wszystko, czego potrzebujesz, aby rozwiązać ten problem, i zdecydowanie polecam do tego Sublime Text 3.
źródło
Po wypróbowaniu wszystkich powyższych. Prosta praca dla mnie, aby zmienić nazwę pakietu flutter w Android Studio :
Krok 1:
Prochowiec:
Command + Shift + R
Linux / Windows:
Ctrl + Shift + R
Po zmianie na nowy pakiet i naciśnij
Replace All
i poczekaj na zakończenie uruchomienia Android Studio .Krok 2:
Następnie przejdź do
AndroidManifest.xml
:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="your.package.name">
i skopiuj
package name
i wykonaj ten sam krok 1, aby zmienić nazwępackage
wAndroidManifest
ibuild.gradle
.Na koniec zmień pakiet w klasie MainActivity.java (jeśli plik MainActivity.java nie jest dostępny, sprawdź plik 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 {
Zmień nazwę katalogu. Szczegółowe informacje można znaleźć w poniższy link to :
Z:
android\app\src\main\java\com\example\name
Do:
android\app\src\main\java\your\new_package\name
źródło