【Flutter】Androidアプリをリリースビルドする時にやること【keystore】

どーも、ぐるたか@guru_takaです。

Flutter製のAndroidアプリをリリースビルドする時にやることを、備忘録としてまとめました。

大まかな流れ

STEP.1
keystore作成
STEP.2
firebaseなどのSHA-1の変更
STEP.3
key.propertiesの作成
STEP.4
build.gradleの編集
STEP.5
実機にインストール

STEP1:keystore作成

まずはリリース用のkeystoreを作成します。以下のコマンドを叩けばOKです。aliasを「key」とし、keystoreを~/key.jksに保存してくれます。

コマンドライン
$ keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

その後、パスワードや名前などを登録すれば、完了です!

STEP2:FirebaseなどのSHA-1の変更

次に、Firebaseなどにデバック用のSHA-1を登録している場合は、作成したkeystoreからリリース用のSHA-1を取得し、登録しましょう。

SHA-1の取得コマンドは以下の通りです。

コマンドライン
$ keytool  -list -v \
-alias key -keystore ~/key.jks

登録したパスワードを入力すると、こんな感じでSHA-1を取得できます。

STEP3:key.propertiesの作成

続いて、key.propertiesを作ります。保存先はapp_directory/android/key.propertiesです。

app_directory/android/key.properties
storePassword=登録したパスワード
keyPassword=登録したパスワード
keyAlias=key
storeFile=/Users/user_name/key.jks

STEP4:build.gradleの編集

続いて、app_directory/android/app/build.gradleを追記、編集します。

app_directory/android/app/build.gradle
~~~~~~~~~~~

// 追記
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
   keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

android {
~~~~~~~~~~~
}

// 追記
signingConfigs {
   release {
       keyAlias keystoreProperties['keyAlias']
       keyPassword keystoreProperties['keyPassword']
       storeFile file(keystoreProperties['storeFile'])
       storePassword keystoreProperties['storePassword']
   }
}

// 編集
buildTypes {
   release {
       signingConfig signingConfigs.release
       //コメントアウト
    //signingConfig signingConfigs.debug
   }
}

STEP5:実機にインストール

Firebaseなどちゃんと動くかどうか、確認したい場合は実機にアプリをインストールしてみましょう!

コマンドライン
$ flutter install

ちゃんと動けば完了です!

参考リンク

参考 【Flutter】android releaseビルド作成時のメモ|yumehachinote 参考 【Flutter】AndroidアプリのリリースビルドをしてみるQiita

コメントを残す