LoginSignup
6

More than 5 years have passed since last update.

Android Studio 2.0のInstant Runを使いたいけどmultiDexEnabledだからムリだと諦めていたアナタへ

Last updated at Posted at 2016-03-17

まあ、私なんですけど。

背景事情など

別に好き好んでmultiDex環境にしているわけではなく、Androidアプリのメソッド数の制限65536個に引っかかったためです。

そのへんの対応方法はこちら

ビルド時に Unable to execute dex: method ID not in [0, 0xffff]: 65536 が出た場合の対処
http://qiita.com/furu8ma/items/6cb4b08c423da6a74299

multiDexEnabled=trueじゃなければビルドできない。しかもビルドはメチャクチャ遅い。
救世主になるかと期待していたInstant RunはmultiDexEnabledでは有効にならない。

ちなみにInstant Runとは
Androidアプリの開発を爆速化させるInstant Runを今日から使おう
http://qiita.com/tnj/items/970febffcb3518c5a3c3

正確にいえば、APIレベルを21以上にすればOKだけど、まだまだKitkatは切り捨てられませんて。

私のプロジェクトではCrossWalkを使用していたのでそのせいかと思っていました。

CROSSWALK PROJECT
https://crosswalk-project.org/

が、どうもそれだけではないみたい。

対応方法

Google Playサービスを必要なだけAndroidStudioプロジェクトに追加する
http://qiita.com/niusounds/items/f9a0ab3cbe07878ed8f6

これに従って、Google Playサービスを最低限に変更

build.gradle
dependencies {
.
.
.
//    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.google.android.gms:play-services-gcm:8.4.0'    //GCM使ってるんで
    compile 'com.google.android.gms:play-services-appindexing:8.4.0'
}

appindexingも外したかったんですが、これを外すとAndroid Studioが勝手に追加したコードの部分がエラーになります。
あれの正体はなんだろう?ggってもよくわからなかったのでこれは将来の課題ということで。

で、これでmultidex関係の設定を外してもビルド成功!
やった、爆速だー!

にしてもGoogle..オマエだったのか...

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6