💡
【Flutter】AndroidのMultidexを有効にして64K問題を解消する
はじめに
Androidエミュレータを立ち上げてターミナルでfulutter run
を実行すると以下のエラーが出ました。
$ flutter run
[!] App requires Multidex support
Multidex support is required for your android app to build since the number of methods has exceeded 64k. See
https://docs.flutter.dev/deployment/android#enabling-multidex-support for more information. You may pass the
--no-multidex flag to skip Flutter's multidex support to use a manual solution.
Flutter tool can add multidex support. The following file will be added by flutter:
android/app/src/main/java/io/flutter/app/FlutterMultiDexApplication.java
Do you want to continue with adding multidex support for Android? [y|n]:
原因
Androidではメソッド数が64kを超えるとアプリをビルドできません。これを64K問題といいます。
64K問題を解決するにはMultidexというライブラリが必要です。
解決法
エラー文の後にDo you want to continue with adding multidex support for Android? [y|n]:
と表示されるのでy
を入力します。
するとFlutterはandroid/app/src/main/java/io/flutter/app/FlutterMultiDexApplication.javaを自動生成してMultidexを有効化、アプリのリビルドを実行します。
Do you want to continue with adding multidex support for Android? [y|n]: y
Multidex enabled. Retrying build.
参考
Discussion