简体   繁体   中英

Configuring TapJoy Creating Dex FIle issue

I have multiple libraries in my libs folder in android. When I try to add "Tapjoy", I get the error:

unable to execute dex method id not in 0 0xffff 65536 android problem is coming

and, when I am trying to configure build path and adding external jars,

java.lang.NoClassDefFoundError: com.tapjoy.TapjoyConnect

I'm stuck on this problem. Can any one give me solution?

Congratulation you have reached the 65K method limit you have two options :

a) Clean up some code by removing unnecessary libraries / using ProGuard.

b) Multidex solution , follow these steps

  1. Make sure your Android SDK Build and Android Support Repository are updated to latest version.
  2. Modify your build.gradle by adding the support dex lib and enabling the multidex

     android { compileSdkVersion 21 buildToolsVersion "21.1.0" defaultConfig { ... minSdkVersion 14 targetSdkVersion 21 ... // Enabling multidex support. multiDexEnabled true } ... } dependencies { compile 'com.android.support:multidex:1.0.0' } 
  3. Modify your manifest:

     <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.multidex.myapplication"> <application ... android:name="android.support.multidex.MultiDexApplication"> ... </application> </manifest> 

ps if you already extend Application then just override the attachBaseContext method

    protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

for more info: Building Apps with Over 65K Methods

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM