2017-08-03 10 views
1

私はAndroidのAOSPソースコードに自分のアプリケーションを統合してコンパイルしています。エラー:Dex書き込みフェーズ:classes.dexのIDが多すぎます。マルチデックスを使用してみてください

エラー:Dex書き込みフェーズ:classes.dexのIDが多すぎます。マルチデックスを使ってみてください

アンドロイドスタジオでうまくいきました。マイアプリの設定は次のようになります。

mainifest.xml

android:name=".App" 

dependencies{ 
    compile 'com.android.support:multidex:1.0.1' 
} 
defaultConfig { 
    multiDexEnabled true 
} 

に設定

public class App extends MultiDexApplication{ 
    @Override 
    protected void attachBaseContext(Context base) { 
     super.attachBaseContext(base); 
     MultiDex.install(this); 
    } 
    } 

私はここで解決策が見つかりました: How to enable mulit dex ,when building apk in AOSP?

をそれはうまくいきませんでした。

LOCAL_PROGUARD_ENABLED := disabled 
LOCAL_DX_FLAGS := --multi-dex --main-dex-list=$(mainDexList) --minimal-main-dex 

LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := multidex-1.0.1:libs/multidex-1.0.1.aar 

すべてのヘルプ:

マイMKファイルは次のようになりますか?前もって感謝します。

+0

ソリューションを見つけましたか?私は同様の問題に直面しています... –

+0

はい。やった。 mkファイルに以下の2行を追加しました。 LOCAL_DX_FLAGS:= --multi-dex - main-dex-list = $(mainDexList) - ミニマム - メイン - デックス LOCAL_JACK_FLAGS + = - マルチデックスネイティブ – user3034559

+0

NDKを使用していますか? –

答えて

0

下記の2行をmkファイルに追加しました。それは動作するはずです。

LOCAL_DX_FLAGS := --multi-dex --main-dex-list=$(mainDexList) --minimal-main-dex 
    LOCAL_JACK_FLAGS += --multi-dex native 
+0

** mk **ファイルはCMakeよりも優先されますか? –

関連する問題