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

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 7,606评论 0 3
  • 一,apk以进程的形式运行,进程的创建是由zygote。 参考文章《深入理解Dalvik虚拟机- Android应...
    Kevin_Junbaozi阅读 8,044评论 0 12
  • 第十章:Android的消息机制 Handler是Android消息机制的上层接口,开发人员只需要与它交互即可,底...
    loneyzhou阅读 4,071评论 0 1
  • 对你而言,社群最大的价值是什么? 1,更深刻的了解自己,明确了前行的方向。 2,比过去的自己改变一些,不再懒,不再...
    豆瓣绿儿阅读 1,144评论 0 0
  • 精油是从植物的花、叶、茎、根或果实中,通过水蒸气蒸馏法、挤压法、冷浸法或溶剂提取法提炼萃取的挥发性芳香物质...
    濮榕阅读 2,578评论 0 1