個人開発用メモ
Dart defineを使った環境分けのメモ
○ Firebaseプロジェクト作成
devやstgのプロジェクトのバンドルIDやパッケージ名はそれぞれ、com.xxx.アプリ名.dev(stg)で作る。prodは何もつけなくていい。
○ iosにFirebaseを導入する
・Copy Bundle Resourcesにdev、stg、prodフォルダ内に配置したGoogleService-Info.plistが追加されていると、『error: Multiple commands produce ...』が発生するのでCopy Bundle Resources削除する。
・ビルド時、iosフォルダ直下にGoogleService-Info.plistが生成されるので、それをCopy Bundle Resourcesに追加する(記事のコメント欄参照)。追加しないと『Firebase has not been correctly initialized. Have you added the "GoogleService-Info.plist" file to the project? 』が発生する。
環境ごとに分けたFirebaseプロジェクトにデプロイする
・firebase initで初期化
・defaultのプロジェクトを指定せず進めていく
・firebase projects:listでプロジェクトのIDを確認する
・.firebasercに環境名と対応するIDをそれぞれ書く
・firebase deploy --project {環境名}で対象のプロジェクトにデプロイ
{
"projects": {
"dev": "開発環境のID",
"stg": "テスト環境のID",
"prod": "本番環境のID"
}
}
widthを取得したい時
方法① MediaQueryを使う
final deviceWidth = MediaQuery.of(context).size.width;
方法② LayoutBuilderを使う(親のサイズを取得する)
if(constraints.maxWidth> xxx){} のように使うことが多い
LayoutBuilder(
builder: (BuildContext context, BoxConstraints constraints) {
final parentWidth = constraints.maxWidth;
return ...
},
);
UI参考まとめ
アプデ申請メモ
●iOS
・Xcodeでバージョンとビルドナンバーを変更し、初回申請同様アップロードする
・App Store Connectから新しいリリースを作成し申請する
●Android
・version codeとversion nameを変更する必要ある。初回リリース時に作成したlocal.propertiesに記載されているものが反映されるが、それを変更するにはpubspec.yamlのversionを変える必要がある
例) version: 1.0.0+1 → version code 1.0.0 version name 1
・初回リリース同様、aabファイルを生成する
・Google Play Consoleの対象のアプリの製品版ページから新しいリリースを作成して申請する