AndroidでToo many method referencesが出た場合

Androidの開発をしていて、巨大なjarファイルを使ったりすると、ビルド時にToo many method referencesエラーが出ることがあります。
メソッドを識別するIDが16bitなので、アプリ全体でメソッド数の上限が65536になっているからです。

で、どうやって解決するかですが、Multidex(DEXファイルを分割?)か、ProGuardで使っていないメソッドを削除するという方法があります。

Android Studioであれば、Multidexをとても簡単に使えるので、今回はそちらでやってみます。

app/build.gradleファイルの、android.defaultConfig部分に、 multiDexEnabled = true を追加するだけでOKです。

また、巨大なjarファイルを追加することによりOOMエラーが出る場合は、同じくbuild.gradleファイルのandroid以下に次の設定を追加するとうまくいくかもしれません。

No Comments

Post a Comment

コメントを投稿するには、下の計算の答えを入力する必要があります。答えは半角数字で入力してください。 *