【Android】メソッド数が64Kを超えてしまいビルドできない
APKビルドしたら突然のエラー
apkビルド時に以下のエラーが出てビルド失敗となりました
Error:The number of method references in a .dex file cannot exceed 64K. Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html
ちなみにエミュレータでの実行時にはエラーになりません
エミュレータと全然違うじゃん!
もういいよ、私Androidやめる!
何が起きているのか
64K を超えるメソッドを使用するアプリの設定 | Android Studio
要約:メソッド数はライブラリ含め65,536
対処
大抵の場合ライブラリが原因だと思われます
私の場合はGooglePlayServiceが圧迫していました SDKバージョンを変えたことにより、メソッド数もつられて増えたようでした 調べたところGooglePlayServiceだけで2万超えるようです
build.gradleを以下のように変えました
BEFRE
dependencies { compile 'com.google.android.gms:play-services:+' }
AFTER
dependencies { compile 'com.google.android.gms:play-services-gcm:+' }
GooglePlayService利用は必要なものだけ含めましょう