Java Android错误:你的应用程序包含的方法引用超过了单个dex文件所能容纳的数量

Java Android错误:你的应用程序包含的方法引用超过了单个dex文件所能容纳的数量,java,android,android-activity,android-studio,gradle,Java,Android,Android Activity,Android Studio,Gradle,Gradle构建成功,但当我尝试运行我的应用程序时,出现以下错误: 错误:你的应用程序包含的方法引用超过了单个应用程序所能容纳的数量 索引文件。看见 我在我的应用程序中实现了“使用谷歌账户登录”功能后得到了这个消息 为什么我会得到这个?为了解决这个问题,我不理解这个问题。你们有没有解决这个问题的办法 编辑 我遵循了这些步骤,但它显示了另一个错误: 正在从程序jar复制资源[/Users/Earthling/AndroidStudioProjects/GoogleTestProject/app/

Gradle构建成功,但当我尝试运行我的应用程序时,出现以下错误:

错误:你的应用程序包含的方法引用超过了单个应用程序所能容纳的数量 索引文件。看见

我在我的应用程序中实现了“使用谷歌账户登录”功能后得到了这个消息

为什么我会得到这个?为了解决这个问题,我不理解这个问题。你们有没有解决这个问题的办法

编辑

我遵循了这些步骤,但它显示了另一个错误:

正在从程序jar复制资源[/Users/Earthling/AndroidStudioProjects/GoogleTestProject/app/build/intermediates/transforms/jarMerging/debug/jars/1/1f/combined.jar] :app:transformClassesWithDexForDebug失败 错误:任务“:app:transformClassesWithDexForDebug”的执行失败。 com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:org.gradle.process.internal.exeception:process'command'/Library/Java/JavaVirtualMachines/jdk1.8.031.jdk/Contents/Home/bin/Java''以非零退出值3结束


您必须使用
multidex
,因为您的项目超出了一个应用程序中授权的方法限制(我不记得大约56000个或差不多)。请参阅文档中的此报价(顺便提供的链接):

随着Android平台的不断发展,Android应用程序的规模也在不断扩大。当您的应用程序及其引用的库达到一定大小时,您会遇到生成错误,表明您的应用程序已达到Android应用程序生成架构的限制

为了构建和运行,您必须执行以下操作:

android {
    defaultConfig {
        ...
        // enabling multidex
        multiDexEnabled true
    }
}

// add the dependencie
dependencies {
    compile 'com.android.support:multidex:1.0.0'
}
然后,创建自己的
应用程序
类,如下所示:

public class MyApplication extends MultiDexApplication {
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this); // install multidex
    }
}
最后,在
清单中添加此类:

<application
    ...
    android:name=".MyApplication">

遵循这些步骤,但我得到了这个新的错误。编辑question@Earthling,你应该试着遵循这个。这可能会解决您的问题。请参阅
<application
    ...
    android:name="android.support.multidex.MultiDexApplication">