Apakah ada cara untuk mengubah proyek Package of Flutter?
Saya ingin mengubah nama paket dan nama aplikasi dalam proyek flutter.
flutter create --org com.domain app_name
Apakah ada cara untuk mengubah proyek Package of Flutter?
Saya ingin mengubah nama paket dan nama aplikasi dalam proyek flutter.
flutter create --org com.domain app_name
Jawaban:
Untuk Nama Aplikasi Android
Ubah nama label di AndroidManifest.xmlfile Anda :
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
Untuk Nama Paket
Ubah nama paket di AndroidManifest.xmlfile Anda :
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
Juga di build.gradlefile Anda di dalam folder aplikasi
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Terakhir, ubah paket di MainActivity.javakelas Anda (jika MainActivity.java tidak tersedia, periksa 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 {
Ubah nama direktori:
Dari:
android\app\src\main\java\com\example\name
Untuk:
android\app\src\main\java\your\package\name
DIedit: 27-Des-18
untuk nama paket cukup ganti build build.gradlesaja
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Untuk iOS
Ubah pengidentifikasi bundel dari Info.plistfile Anda di dalam ios/Runnerdirektori Anda .
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
MEMPERBARUI
Untuk menghindari penggantian nama paket dan pengidentifikasi bundel, Anda dapat memulai proyek Anda menggunakan perintah ini di terminal Anda:
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER). Di mana variabel itu disembunyikan?
Mengubah nama secara manual sepertinya tidak berfungsi, melempar kesalahan gradle, nah dalam kasus saya itu memang melempar kesalahan.
Jadi saya biasanya membuat proyek flutter baru.
Saya menggunakan perintah yang disebutkan di bawah ini untuk membuat aplikasi flutter baru
flutter create --org com.yourdomain appname
proyek Anda akan memiliki nama paket sebagai -> com.yourdomain.appname
jika Anda hanya ingin menyimpan nama paket Anda com.appnamekemudian buat beberapa perubahan seperti di bawah ini
flutter create --org com appname
untuk menambahkan java, bukan kotlinuntuk androidmenambahkan-a java
flutter create -a java --org com.yourdomain appname
Di Android, nama paket ada di AndroidManifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
Di iOS nama paket adalah pengidentifikasi bundel di Info.plist:
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
yang ditemukan di Runner.xcodeproj / project.pbxproj :
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
Nama paket ditemukan di lebih dari satu lokasi, jadi untuk mengubah nama Anda harus mencari seluruh proyek untuk kemunculan nama proyek lama Anda dan mengubahnya semuanya.
Android Studio dan Kode VS:
Terima kasih kepada diegoveloper untuk bantuan dengan iOS.
Setelah kembali ke halaman ini beberapa waktu yang berbeda, saya pikir lebih mudah dan lebih bersih untuk memulai proyek baru dengan nama yang tepat dan kemudian menyalin file lama.
Bagi yang seperti saya yang tidak suka mengubah file tertentu, saya telah menggunakan https://pub.dev/packages/rename .
Menginstal: pub global activate rename
Dan kemudian, berlari: pub global run rename --bundleId com.example.android.app --target android
Ini adalah bagaimana saya mengganti nama paket untuk ios dan android
applicationId "com.company.name"app/src/maindan ganti nama package="com.company.name"danandroid:label="App Name"app/src/debugdan ganti namapackage="com.company.name"app/src/profiledan ganti namapackage="com.company.name"app/src/main/kotlin/com/something/something/MainActivity.ktdan ganti namapackage="com.company.name"app/src/main/kotlin/dan ganti nama setiap direktori sehingga strukturnya sepertiapp/src/main/kotlin/com/company/name/pubspec.yamldalam proyek Anda dan ubah name: somethingmenjadi name: name, contoh: - jika nama paketcom.abc.xyz yangname: xyzcom.company.nameflutter cleanubah semua file AndroidManifest.xml dari Proyek Flutter Anda, -> package = "your.name.app " (app / src / debug / AndroidManifest.xml ) dan (app / src / main / AndroidManifest.xml ) dan (aplikasi / src / profile / AndroidManifest.xml )
terlihat bagus !!
Diperbarui Anda harus mengubah nama paket ke nama paket yang Anda inginkan di lima lokasi ini.
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"
langkah terakhir adalah menjalankan flutter clean
Menurut dokumentasi flutter resmi Anda hanya perlu mengubah direktori ApplicationIdin app/build.gradle. Maka Anda hanya perlu membangun apk dan nama paket file manifes akan diubah sesuai dengan yang ApplicationIdAnda ubah build.gradle. Karena bergetar saat membangun apk dan google play keduanya pertimbangkan ApplicationIddari build.gradle. Solusi ini berhasil untuk saya.
sumber: Dokumentasi Resmi
Anda dapat mengikuti dokumentasi resmi ini oleh Google: https://developer.android.com/studio/build/application-id.html
ID aplikasi harus diubah di Build.gradle, sementara nama paket dapat diubah di AndroidManifest.xml.
Namun seseorang harus berhati-hati mengubah nama paket.
Juga saat sedang mengunggah aplikasi, orang harus berhati-hati karena cocok dengan ID aplikasi dari aplikasi yang diunggah sebelumnya dengan unggahan baru.
Di Android, ubah id aplikasi menjadi
> build.gradle
file dan perubahan iOS
> nama bundel dari pengaturan proyek.
Bahkan jika jawaban saya tidak akan diterima sebagai jawaban yang benar, saya hanya merasa semua jawaban di atas menyebabkan saya memiliki lebih banyak masalah di sini adalah bagaimana saya memperbaikinya
Kesimpulan: program menemukan dan mengganti yang sederhana adalah semua yang Anda butuhkan untuk menyelesaikan masalah ini, dan saya sangat menyarankan Sublime Text 3 untuk itu.