本記事では、Flutterで開発したアプリのリリースの際に、Google Play Console内で表示された以下の警告への対応方法を記載します。
発生した警告はこの4つ
4 件の警告
4 件のメッセージ(バージョン コード: 4)
警告
現在、お客様のアプリは API レベル 29 を対象にしています。セキュリティとパフォーマンスが最適化された最新の API を利用するには、API レベル 30 以上を対象にする必要があります。
2021 年 8 月以降、新しいアプリは Android 11(API レベル 30)以上を対象にする必要があります。
2021 年 11 月以降、アプリのアップデートは Android 11(API レベル 30)以上を対象にする必要があります。
警告
この APK では、使用されていないコードやリソースがユーザーに送信されます。Android App Bundle を使用すると、アプリのサイズを小さくすることができます。デバイスの設定に合わせてアプリを最適化しないと、ユーザーのデバイスにダウンロードしてインストールするアプリのサイズが必要以上に大きくなります。アプリは、サイズが大きくなるほどインストール成功率の低下を招き、ユーザーのデバイスのストレージを消費します。
警告
この APK に含まれている Java / Kotlin コードは難読化されている可能性があります。クラッシュや ANR を簡単に分析、デバッグできるよう、難読化解除ファイルをアップロードすることをおすすめします。詳細
警告
この APK にはネイティブ コードが含まれ、デバッグ シンボルがアップロードされていません。クラッシュや ANR を簡単に分析、デバッグできるよう、シンボル ファイルをアップロードすることをおすすめします。詳細
経験がないと、おそらく誰もが引っかかったことがある警告なのではないでしょうか。
また、Flutterで開発したアプリですが、Androidでも発生し得る警告かと思われます。
参考にしてみください。
APIレベルバージョンアップに関する警告
TargetSdkVersionを上げましょう。
android {
・・・
defaultConfig {
・・・
targetSdkVersion 30
}
}
App Bundleに関する警告
従来の.apkファイルではなく、app Bundle(.aab)形式のアプリケーションファイルにすることで、アプリのサイズが抑えられるそうです。
僕はFlutter CIツールのCodemagicを使用しておりますのでそちらでのやり方を説明します。
▼Codemagicの設定まわりで参考になった記事はこちら。
Practical guide: Flutter + Firebase + Codemagic (for Android)
FlutterでCI(Codemagic編)
【Mac不要】FlutterアプリにFirebase SDKを組み込んでiOSとAndroidに実機配備する手順 - Codemagic編
.aabファイルを出力する方法は簡単で、下図の通り、Buildオプションの「Android build format」にて、「Android app bundle(AAB)」を選択して、普段通りbuildしてあげればOK。
難読化に関する警告
mapping.txtをアップロードしましょう。
Codemagicだと、buildが成功したもののダウンロードボタンを押すと、mapping.txtがあります。
クリックすると、ダウンロードされずに中身が開かれるので、全コピして自分で新規作成したmapping.txtファイルに貼り付けます。
Play Consoleに戻って、アップロードしたAPP BundleまたはAPKファイルの右側に三点ドットが表示されているのでそれをクリックすると、下図のような項目が表示されます。
マッピングファイルをアップロードをクリックして、ここからmapping.txtをアップロードすればOK。
デバッグシンボルのアップロードに関する警告
こちらの記事が参考になりました。
【Flutter】Android デバッグシンボルのアップロード
ありがとうございます。