使用multidex支持库的目的是什么? [我提到官方的android网站。]

时间:2016-10-19 07:08:49

标签: android

我将Android Documentation site.称为" Multidex"但是当我使用它时却没有想到。并且必须使用或不使用。出于什么目的我们需要使用该类??

谢谢..

2 个答案:

答案 0 :(得分:3)

这样做的目的是将您的Dex文件拆分为多个Dex文件。

Dex文件包含应用程序的已编译代码。

Android存在一个问题,即Dex文件(64k)中的方法定义数量有一个上限。这意味着一旦达到该限制,您就无法进一步扩展您的应用程序。

在multidex之前,建议使用ProGuard通过删除代码中未使用的方法来减少方法定义的数量。在实施Google Play服务框架时特别有用。

然后引入了Multidex,允许应用程序继续扩展而不必担心方法计数限制。 确实存在使应用程序更不稳定的危险。因此建议首先尝试使用ProGuard来减少方法计数。

答案 1 :(得分:1)

根据文件:

  

Android应用程序(APK)文件包含可执行的字节码文件   Dalvik可执行文件(DEX)文件的形式,包含已编译的文件   用于运行您的应用的代码。 Dalvik可执行规范限制   单个DEX中可引用的方法总数   文件到65,536,包括Android框架方法,库方法,   和你自己的代码中的方法。超过此限制需要这样做   您配置应用程序构建过程以生成多个DEX   文件,称为multidex配置。

https://developer.android.com/studio/build/multidex.html