Android 65536

作者: XiMiMax | 来源:发表于2018-03-27 17:37 被阅读35次

在Android开发过程中,业务的增加会导致项目越来大。此时,很容易遇到65536异常。原因在于——在Android中,一个Dex中存储方法id用的是short类型数据,所以我们的方法总数不能超过64K

  • 解决方案

    1. 在主module的build中加入multiDexEnabled true
           android {
              ...
               defaultConfig {
                  ...
                   multiDexEnabled true//transformDexArchiveWithExternalLibsDexMergerForDebug'
                  ...
               }
              ...
           }
    
    1. 在主module的build中加入dexOptions{}
           android {
              ...
               dexOptions {
                   jumboMode true
                   javaMaxHeapSize "4g"
               }
              ...
           }
    
    1. 在主module的build中依赖com.android.support:multidex:version
           dependencies {
              ...
               implementation 'com.android.support:multidex:1.0.3'
               ...
               }
    
    1. 修改Application
           public class YouApplication extends MultiDexApplication {
             ...
           }
           ////////////////////////////////////或者
           public class YouApplication extends Application {
              ...
              @Override
               protected void attachBaseContext(Context base) {
                   super.attachBaseContext(base);
                   MultiDex.install(this);
               }
               ...
           } 
    

更多内容 XiMiMax -- http://www.ximimax.cn/

相关文章

网友评论

    本文标题:Android 65536

    本文链接:https://www.haomeiwen.com/subject/tbpscftx.html