回答:
Androidアプリ名の場合
AndroidManifest.xml
ファイルのラベル名を変更します。
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
パッケージ名
AndroidManifest.xml
ファイルのパッケージ名を変更します。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
また、build.gradle
アプリフォルダー内のファイル内
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
最後に、MainActivity.java
クラスのパッケージを変更します(MainActivity.javaが使用できない場合は、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 {
ディレクトリ名を変更します。
から:
android\app\src\main\java\com\example\name
に:
android\app\src\main\java\your\package\name
編集:2018年12月27日
以下のためのパッケージ名だけビルドで変更build.gradle
のみ
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
iOSの場合
バンドル識別子をディレクトリInfo.plist
内のファイルから変更しますios/Runner
。
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
更新
パッケージとバンドル識別子の名前を変更しないようにするには、ターミナルで次のコマンドを使用してプロジェクトを開始できます。
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER)
です。変数の非表示はどこにありますか?
名前を手動で変更してもうまくいかないようで、gradleエラーがスローされます。私の場合、エラーがスローされます。
だから私は通常、新しいflutterプロジェクトを作成します。
以下のコマンドを使用して、新しいFlutterアプリを作成します
flutter create --org com.yourdomain appname
プロジェクトのパッケージ名は->になります。 com.yourdomain.appname
パッケージ名をそのままにしたい場合はcom.appname
、以下のように変更してください
flutter create --org com appname
追加の代わりにJava kotlin
をandroid
追加する-a java
flutter create -a java --org com.yourdomain appname
Androidでは、パッケージ名はAndroidManifestにあります。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
iOSでは、パッケージ名はInfo.plist内のバンドルIDです。
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
で発見されたRunner.xcodeproj / project.pbxproj:
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
パッケージ名が複数の場所にあるため、名前を変更するには、プロジェクト全体で古いプロジェクト名の出現を検索し、すべて変更する必要があります。
Android StudioとVSコード:
iOSのヘルプについては、diegoveloperに感謝します。
何度かこのページに戻った後、正しい名前で新しいプロジェクトを開始し、古いファイルをコピーする方が簡単でわかりやすいと思います。
特定のファイルを変更したくない私のような人のために、私はhttps://pub.dev/packages/renameを使用しました。
インストール: pub global activate rename
そして、実行: pub global run rename --bundleId com.example.android.app --target android
これは、iOSとAndroidの両方のパッケージの名前を変更する方法です
applicationId "com.company.name"
app/src/main
、名前を変更package="com.company.name"
してandroid:label="App Name"
app/src/debug
名前を変更しますpackage="com.company.name"
app/src/profile
名前を変更しますpackage="com.company.name"
app/src/main/kotlin/com/something/something/MainActivity.kt
て名前を変更package="com.company.name"
app/src/main/kotlin/
各ディレクトリにて名前を変更し、構造が次のようになるようにします。app/src/main/kotlin/com/company/name/
pubspec.yaml
プロジェクトに移動し、に変更name: something
しますname: name
。例:-パッケージ名がcom.abc.xyz
name: xyz
com.company.name
flutter clean
更新これらの5つの場所で、パッケージ名を目的のパッケージ名に変更する必要があります。
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"
最後のステップは実行することです flutter clean
Googleの次の公式ドキュメントに従ってください。 https //developer.android.com/studio/build/application-id.html
アプリケーション名はBuild.gradleで変更する必要がありますが、パッケージ名はAndroidManifest.xmlで変更できます。
ただし、パッケージ名の変更には注意が必要です。
また、アプリを再アップロードする際は、以前にアップロードしたアプリのアプリIDと新しいアップロードを照合するため、注意が必要です。
私の答えが正解として受け入れられない場合でも、上記のこれらのすべての答えが私にここでさらに問題を引き起こしたと感じているだけです
結論:この問題を解決するために必要なのは、単純な検索と置換プログラムだけです。そのためには、Sublime Text 3を強くお勧めします。