arcanum_jp’s blog

おっさんの日記

FlutterでのAndroid側のリリースメモ

メモ、下記でメモっておいた参照ページをやったメモ。大体は参考ページの通りだけどちょっと違ったので。参照したページは

関連:

arcanum.hatenablog.com

参照したページはこちら

zenn.dev

 

証明書作成

下記ディレクトリで証明書を作成。

/[project name]/android/app

$ keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

 

パスワード意外は適切なものを。以下は例

% keytool -genkey -v -keystore key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

キーストアのパスワードを入力してください:  passwordwoireru

新規パスワードを再入力してください: passwordwoireru

姓名は何ですか。

  [Unknown]:  

組織単位名は何ですか。

  [Unknown]:  

組織名は何ですか。

  [Unknown]:  

都市名または地域名は何ですか。

  [Unknown]:  

都道府県名または州名は何ですか。

  [Unknown]:  

この単位に該当する2文字の国コードは何ですか。

  [Unknown]:  JP

CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=JPでよろしいですか。

  [いいえ]:  Y

 

10,000日間有効な2,048ビットのRSAのキー・ペアと自己署名型証明書(SHA256withRSA)を生成しています

ディレクトリ名: CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=JP

[key.jksを格納中]

 

key.jksを組み込むために設定をlocal.propertiesに追記

sdk.dir=/Users/xxxxxxx/Library/Android/sdk
flutter.sdk=/Users/xxxxxx/libs/flutter
flutter.buildMode=release
flutter.versionName=1.0.0
flutter.versionCode=1

# リリース向けに追加
storePassword=passwordwoireru
keyPassword=passwordwoireru
keyAlias=key
storeFile=ke

 

android/build.gradle の変更とアプリのビルド

・・・略
android {
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "jp.arcanum.tomiyan"
minSdkVersion flutter.minSdkVersion
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
// 追加
signingConfigs {
release {
keyAlias localProperties['keyAlias']
keyPassword localProperties['keyPassword']
storeFile localProperties['storeFile'] ? file(localProperties['storeFile']) : null
storePassword localProperties['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 <ーーーー追記
}
}
・・・略 

あとはプロジェクトのルートでコマンドを打つ

flutter build appbundle --release

以下実行ログ

 % flutter build appbundle --release

💪 Building with sound null safety 💪

 

Removed unused resources: Binary resource data reduced from 105KB to 90KB: Removed 13%

Running Gradle task 'bundleRelease'...                             10.1s

Built build/app/outputs/bundle/release/app-release.aab (18.2MB).