Flutter: アプリの Application ID / Bundle ID を変更する - change_app_package_name
December 20, 2022
Flutter でプロジェクトを新規作成するときに --org
で組織名を指定することができます。
flutter create --org app.hello my_app
ここで指定しない場合は com.example
で作成されます。
プロジェクト生成時の組織名が Android での Application ID、iOS での Bundle ID として設定されます。
あとから変更するのは手間になるので、途中で変更しなくて済むよう、プロジェクト生成時にきちんとした組織名で設定しておくのが良いでしょう。
とはいえ、後から変更したい場合は以下で紹介されている手順で変更可能です。
- Flutter でパッケージ名が com.example になっているのを iOS/Android で修正する箇所まとめ - Qiita
- https://qiita.com/osamu1203/items/6adfab47e562f5e7d03b
iOS に関しては Xcode で Bundle ID を修正すれば完了しますが、Android に関する修正は手数が多く手間がかかります(といっても実際そこまで大変でもないですけれど)。
そこで、修正作業を自動化してくれるライブラリがありますのでこれを利用しましょう。
change_app_package_name #
- change_app_package_name | Dart Package
- https://pub.dev/packages/change_app_package_name
How to Use? の説明に書かれている内容に沿って作業すれば良いだけです。
まずはインストールします。
flutter pub add change_app_package_name
なお直接 pubspec.yaml
に記載を追加して flutter pub get
でも大丈夫です。
アプリの ID を次のように変えるとします。
- 変更前:
com.example.my_app
- 変更後:
app.sample.your_app
次のようにコマンドの最後に変更後のアプリ ID を指定して実行します。
flutter pub run change_app_package_name:main app.sample.your_app
実行結果として次のメッセージが表示されるはずです。
> Old Package Name: com.example.my_app
> Updating build.gradle File
> Updating Main Manifest file
> Updating Debug Manifest file
> Updating Profile Manifest file
> Project is using kotlin
> Updating MainActivity.kt
> Creating New Directory Structure
> Deleting old directories
実際にファイルの変更点を確認すると、次のように変更されていることが確認できます。
/android/app/build.gradle
のapplicationId
の記述変更/android/app/src/debug/AndroidManifest.xml
のpackage
の記述変更/android/app/src/main/AndroidManifest.xml
のpackage
の記述変更/android/app/src/profile/AndroidManifest.xml
のpackage
の記述変更/android/app/src/main/kotlin/com/example/my_app/MainActivity.kt
が削除され/android/app/src/main/kotlin/app/sample/your_app/MainActivity.kt
が新規作成、そしてその中のpackage
の記述変更