Flutterの新規プロジェクトを始めるときのコマンドは以下のようになります。
flutter create --org com.example project_name
このコマンドに関しての解説を詳しくしていきたいと思います。
新規プロジェクト作成時のコマンドについて解説
”--org"オプションについて
このオプションはアプリの組織識別子を設定するために使われています。
この組織識別子でアプリケーションIDやバンドルIDが決定されます。
※後で変更可能
このオプションには自分のサイトのURLを反対側から書くのが一般的です。
例えば「google.com」であれば「com.google」といった感じです。
アプリケーション名を入力
--org
オプションの後にあるのが実際のアプリケーション名にします。
今回は「test」だったとしましょう。
このようにすることでアプリケーションIDやバンドルIDには「com.google.test」と設定されます。
Flutterの新規プロジェクト作成時に"--org"オプションが必要な理由
おそらく初めてFlutterのプロジェクトを作成する時に見るコマンドは以下のようなものかと思います。
flutter create testapp
このコマンドでアプリケーションを作成した場合、アプリケーションIDが「com.example.testapp」となります。
自分だけの環境で作るだけなら問題ありません。
しかし、orgオプションを使っていないと、アプリケーション公開するときにアプリケーションIDを全て書き換える必要性が出てきます。
後にリリースして運用する予定であれば、先に実行しておくに越したことがないので--org
オプションは先につけておくのが良いかと思います。
Flutterの新規プロジェクト作成時の注意点
プロジェクト名やドメイン名にハイフン(-)やアンダースコア(_)を使わない
新規プロジェクト作成時の注意点は「ハイフン(-)やアンダースコア(_)を使わない」ということです。
理由はiOSとandroidのapplicationIdやbundleIdのルールが違うからです。
- Androidではハイフン(-)が使えない
- iOSではアンダースコア(_)が使えない
具体的なルールの違いはこのようになっていて、実際にアプリリリース時に問題となります。
--orgオプションでつけた場合、アプリケーションID、バンドルIDは全て同じものが入るようになっているため、androidとiOS両方でリリースする場合、どちらかを修正する必要が出てきます。
ドメインに関してはすでに取得済みでハイフン(-)アンダースコア(_)ある場合は修正が必ず必要となります。
※当サイトが実際にそれで最初は知らずで困ったw
なので、もしこれから新規で作成していく場合、どうしても必要でない場合はハイフン(-)やアンダースコア(_)を使わないようにしておくと手間がなくなるので使わないようにしておきましょう。
ハイフン(-)やアンダースコア(_)を使ってしまっている場合
もし使って作成した場合、ハイフン(-)を使っている場合、Android側では「ハイフン(-)」が削除された状態で作成されています。
当サイトであれば「r-app」で作成されたら「rapp」となって作成されます。
すでに使用してしまっている場合は修正するしかないので、
シンプルにエディターで検索してandroidは「-」を「_」に、iOSは「_」を「-」に修正するようにしましょう。