Android Try supplying a main-dex list. # methods: 66657 >66657 > 65536

Cannot fit requested classes in a single dex file. Try supplying a main-dex list. # methods: 66657 > 65536


不能将请求的类装入单个dex文件中。试着提供一份主抄本清单。

#方法:66657 > 65536。

这个报错是因为你的项目里单个dex文件的函数超过了65536个,随着应用功能越来越复杂,代码量不断地增大,引入的库也越来越多,可能会报这个异常

Cannot fit requested classesinasingledex file.Trysupplying a main-dex list.# methods: 66657 > 65536

这说明应用中引用的方法数超过了最大数65536个。产生这一问题的原因就是系统的65536限制,65536限制的主要原因是DVM Bytecode的限制,DVM指令集的方法调用指令invoke-kind索引为16bits,最多能引用 65535个方法。

可以尝试着用一下方法解决这个问题

        在你的app.gradle下写如下方法

                defaultConfig {

                      multiDexEnabled true

                 }

                buildTypes {

                        debug{

                            lintOptions {

                                checkReleaseBuilds false

                                abortOnError false

                          }

                }

                   release {

                        lintOptions {

                            checkReleaseBuilds false

                            abortOnError false

                        }

                   }

                }

#方法:66657 > 65536。

导入下面的依赖

                    implementation 'com.android.support:multidex:1.0.3'

把你原来的继承的Application类,换成MultiDexApplication

这样应该就可以解决这个问题了,这种解决方式,我是在国外网站的一篇帖子上看到的,在此记录一下

你可能感兴趣的:(Android Try supplying a main-dex list. # methods: 66657 >66657 > 65536)