Open2
Flutterプロジェクトの初期セットアップ

- .gitignore に追加
# environment and secrets
.env*
.secrets*
- git commit
- pubspec.yaml を version: 0.9.9+1 に変更
- dev_dependency に cider と pedantic_mono を追加
flutter pub add \
dev:cider \
dev:very_good_analysis
- (freezedを追加する) https://pub.dev/packages/freezed#install
flutter pub add \
freezed_annotation \
json_annotation \
dev:build_runner \
dev:freezed \
dev:json_serializable
- (riverpodを追加する) https://docs-v2.riverpod.dev/docs/introduction/getting_started
flutter pub add \
hooks_riverpod \
flutter_hooks \
riverpod_annotation \
dev:riverpod_generator \
dev:build_runner \
dev:custom_lint \
dev:riverpod_lint
- flutter pub get
- analysis_options.yaml
analysis_options.yaml
include: package:very_good_analysis/analysis_options.yaml
linter:
rules:
public_member_api_docs: false
sort_pub_dependencies: false
analyzer:
plugins:
- custom_lint
exclude:
- "**/*.g.dart"
errors:
invalid_annotation_target: ignore
- open ios/Runner.xcworkspace
- Project > TARGETS > Signing & Capabilities を開いて Team が設定されていることを確認する
- Info.plistに
App Uses Non-Exempt Encrption
を追加する - Product > Archive を実行
- Organization > Distribute App を実行
- distribution method: App Store Connect
- desitination: Upload
- 以下のような画面が現れるので Name (アプリ名称)を変更して Next、これでAppStoreにレコードが作成される(アプリの情報が登録される)
-
Upload まで行う、これでアプリをApp Store Connect に手動でアップロードが実施できることを確認した1.0.0が登録されるのでアップロードしなくても良い
- App Store Connect にログイン
- TestFlight を開いて 内部テスト にグループを追加
- グループにテスターを追加
- Invitation メールから実機にインストール
- Android の release ビルド設定
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 415691d..67e453e 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -25,6 +25,10 @@ apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
+def keystorePropertiesFile = rootProject.file("key.properties")
+def keystoreProperties = new Properties()
+keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
+
android {
compileSdkVersion flutter.compileSdkVersion
ndkVersion flutter.ndkVersion
@@ -53,13 +57,26 @@ android {
versionName flutterVersionName
}
+ signingConfigs {
+ release {
+ keyAlias keystoreProperties['keyAlias']
+ keyPassword keystoreProperties['keyPassword']
+ storeFile rootProject.file(keystoreProperties['storeFile'])
+ storePassword keystoreProperties['storePassword']
+ }
+ }
+
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
- signingConfig signingConfigs.debug
+ signingConfig signingConfigs.release
}
}
}
- android のビルドに必要なファイルを配置
- android/app/release.jks を配置
- android/key.properties を配置
storeFile=app/release.jks
storePassword=***
keyPassword=***
keyAlias=***
- build aab
flutter build appbundle
- aab is build/app/outputs/bundle/release/app-release.aab
- GooglePlayConsoleの内部テストに aab をアップロード
- 初回に必要
- CI/CDのセットアップ

SlackにGitHubの通知を設定する