首页 > 解决方案 > 提取“.aab”文件时出错:dex 文件索引无效,需要文件“classes٢.dex”但找到“classes2.dex”

问题描述

当我提取文件 aab 时出现此错误:

Invalid dex file indices, expecting file 'classes٢.dex' but found 'classes2.dex'.

我的 Gradle 应用程序:

apply plugin: 'com.android.application'

android {
compileSdkVersion 30
buildToolsVersion "30.0.3"

defaultConfig {
    applicationId "com.rewardstom.win"
    minSdkVersion 19
    multiDexEnabled true
    targetSdkVersion 30
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
    release {
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

lintOptions {

    checkReleaseBuilds false
}

dexOptions {
    javaMaxHeapSize "4g"
    preDexLibraries = false
}


}

dependencies {

    implementation 'com.android.support:multidex:1.0.3'
    implementation 'androidx.multidex:multidex:2.0.1'
    implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'])
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'

    implementation 'androidx.appcompat:appcompat:1.3.1'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
    implementation 'com.google.android.material:material:1.4.0'

    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'androidx.palette:palette:1.0.0'
    implementation 'com.android.volley:volley:1.2.0'
    implementation 'com.facebook.android:facebook-login:7.1.0'

    implementation platform('com.google.firebase:firebase-bom:28.2.0')
    implementation 'com.google.firebase:firebase-auth'
    implementation 'com.google.firebase:firebase-messaging'
    implementation 'com.google.android.gms:play-services-auth:19.2.0'
    implementation 'com.google.firebase:firebase-dynamic-links'
    implementation "androidx.browser:browser:1.3.0"

    //Ads
    implementation 'com.google.android.gms:play-services-ads:20.2.0'
    implementation 'com.google.android.gms:play-services-ads-identifier:17.0.1'
    implementation 'com.google.android.gms:play-services-basement:17.6.0'

    api 'com.tapjoy:tapjoy-android-sdk:12.8.0@aar'
    implementation 'com.fyber:offerwall-sdk:9.2.2'
    implementation 'com.applovin:applovin-sdk:10.2.1'
    implementation 'com.adcolony:sdk:4.5.0'
    implementation 'com.chartboost:chartboost-sdk:8.2.0'
    implementation 'com.ironsource.sdk:mediationsdk:7.1.7'
    implementation 'com.github.vungle:vungle-android-sdk:6.7.1'
    implementation 'com.facebook.android:audience-network-sdk:6.5.1'

    //noinspection GradleDependency
    implementation 'commons-io:commons-io:2.4'
}
apply plugin: 'com.google.gms.google-services'

标签: androidwindowsgradle

解决方案


一种可能有效的临时解决方案是设置

release {
    minifyEnabled false
    .......
}

这将减少您的应用程序大小,这可能会导致它只使用一个dex 文件

如果这不起作用,您需要将 Windows 显示语言更改为使用的语言。阿拉伯数字(包括您的管理语言设置)。


推荐阅读