2015-05-04 71 views

回答

3

您可以使用proguard并尝试缩小您的代码。这将是首选。

否则,使它为multidex(但我不明白它是如何“仅用于测试”,除非您在部署代码之前仍缩小代码)。

可以实现,通过三个简单的方法之一:

  1. 如果你有一个应用程序类,只需让它扩展MultidexApplication(而不是简单的Application)。
  2. 如果你没有一个应用程序类,您可以在android:name="android.support.multidex.MultidexApplication"属性添加到您的应用程序标签在AndroidManifest.xml
  3. 如果你有一个应用程序类,但不能覆盖MutlidexApplication(因为你没有覆盖到Application首先但是其他自定义应用程序类),添加以下重写:

    @Override 
    protected void attachBaseContext(Context context) { 
        super(context); 
        Multidex.install(this); 
    } 
    

[如果要支持超过21 API较低的水平,你需要的android-support-multidex.jar依赖添加到您的项目。它可以在android-sdk目录中的extras文件夹下找到]

1

除了proguard以外,没有任何解决方法可以剥离足够的,以便在幸运的情况下让您达到极限。只是实现multidex。现在很容易。

0

该限制是64 x 1024 = 65.536方法。这意味着64K方法。 您无法更改此最大值,但可以缩小库。所有你需要做的就是缩短这样的图书馆的:

坏:

compile 'com.google:9.6.1' 

更好:

compile 'com.google.android.gms:play-services:9.6.1'