com.android.build.api.transform.TransformException:java.lang.IllegalStateException

时间:2017-10-07 12:59:30

标签: android multidex

我面临以下错误:

Error:Execution failed for task ':app:transformDexArchiveWithDexMergerForDebug'.
> com.android.build.api.transform.TransformException: java.lang.IllegalStateException

我的应用 build.gradle

apply plugin: 'com.android.application'
apply plugin: 'com.google.firebase.firebase-perf'

android {
    compileSdkVersion 26
    buildToolsVersion '26.0.2'

    defaultConfig {
        applicationId "ahija.com"
        minSdkVersion 19
        targetSdkVersion 26
        versionCode 24
        versionName "2.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        vectorDrawables.useSupportLibrary = true
        multiDexEnabled true
    }

    configurations.all {
//        resolutionStrategy.eachDependency { DependencyResolveDetails details ->
//            def requested = details.requested
//            if (requested.group == 'com.android.support') {
//                if (!requested.name.startsWith("multidex")) {
//                    details.useVersion '26.1.0'
//                }
//            }
//        }
    }

    dexOptions {
        javaMaxHeapSize "4g"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/dependencies.txt'
        exclude 'META-INF/LGPL2.1'
    }

}

dependencies {
    implementation 'com.android.support:support-v4:26.1.0'
    compile fileTree(include: ['*.jar'], dir: 'libs')

//    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
//        exclude group: 'com.android.support', module: 'support-annotations'
//    })

    // GOOGLE
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile 'com.android.support:recyclerview-v7:26.1.0'
    compile 'com.android.support:design:26.1.0'
    compile 'com.android.support:support-vector-drawable:26.1.0'
    compile 'com.android.support:cardview-v7:26.1.0'
    compile 'com.android.support:support-v13:26.1.0'
    compile 'com.android.support:customtabs:26.1.0'
    compile 'com.android.support:multidex:1.0.2'
    compile 'com.google.code.gson:gson:2.8.1'

    // PLAY SERVICES
    compile 'com.google.android.gms:play-services-auth:11.4.2'
    compile 'com.google.android.gms:play-services-maps:11.4.2'
    compile 'com.google.android.gms:play-services-location:11.4.2'

    // FIREBASE
    compile 'com.google.firebase:firebase-messaging:11.4.2'
    compile 'com.google.firebase:firebase-core:11.4.2'
    compile 'com.google.firebase:firebase-auth:11.4.2'
    compile 'com.google.firebase:firebase-database:11.4.2'
    compile 'com.google.firebase:firebase-crash:11.4.2'
    compile 'com.google.firebase:firebase-perf:11.4.2'
    compile 'com.firebaseui:firebase-ui-database:3.0.0'

    // FACEBOOK
    compile 'com.facebook.android:facebook-android-sdk:4.26.0'

    // OTHERS
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.squareup:android-times-square:1.6.5@aar'
    compile 'com.daimajia.easing:library:2.0@aar'
    compile 'com.daimajia.androidanimations:library:2.3@aar'
    compile 'it.sephiroth.android.library.bottomnavigation:bottom-navigation:2.0.1-rc1'
    compile 'com.github.zurche:open-weather-map-android-wrapper:v0.1'
    compile 'com.github.varunest:sparkbutton:1.0.5'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.daimajia.slider:library:1.1.5@aar'
    compile 'de.cketti.mailto:email-intent-builder:1.0.0'
    compile 'id.zelory:compressor:2.1.0'
    compile 'com.github.jrvansuita:PickImage:2.1.4'
    compile 'com.github.DamanSingh4321:ProProgressViews:v1.1'
    compile group: 'com.cloudinary', name: 'cloudinary-android', version: '1.20.0'

    // INTEGRATIONS
    compile 'com.github.freshdesk:hotline-android:1.2.5'

    // NEW AND COOL
    compile 'com.jakewharton.timber:timber:4.5.1'
    compile 'com.jakewharton:butterknife:8.8.1'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.squareup.okhttp3:okhttp:3.9.0'
//    compile 'com.jakewharton.picasso:picasso2-okhttp3-downloader:1.1.0'
//    compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'

    // ANNOTATION PROCESSORS
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
//    annotationProcessor 'com.google.dagger:dagger-android-processor:2.11'

    // TEST
//    testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

如果我尝试构建应用程序,它构建得很好并且我获得了APK但是如果我尝试直接在我的设备上从Android Studio运行,则会出现上述错误。 如何解决?

我很长时间以来都面临着这个错误。我目前正在通过手动构建apk然后将其传输到手机的调试版本进行测试。 "运行"按钮直接给我上面的错误。

2 个答案:

答案 0 :(得分:0)

在应用程序标记中添加清单

result.innerHTML

答案 1 :(得分:0)

这是因为您的依赖项中存在兼容性问题,即Firebase/Google Play ServiceFirebaseUI。从FirebaseUI documentation您可以看到以下注释:

  

每个版本的FirebaseUI都依赖于这些库的固定版本,定义为common / constants.gradle中的变量firebase_version。如果您使用表单编译'com.google.firebase:firebase- :xyz'或编译'com.google.android.gms:play-services - :xyz'的应用程序中的任何依赖项您需要确保使用与所选FirebaseUI版本相同的版本。

     

为方便起见,这里有一些最近的例子:

+--------------------+--------------------------------+
| FirebaseUI Version | Firebase/Play Services Version |
+--------------------+--------------------------------+
|              3.0.0 | 11.4.2                         |
|              2.4.0 | 11.4.0                         |
|              2.3.0 | 11.0.4                         |
|              2.2.0 | 11.0.4                         |
|              2.1.1 | 11.0.2                         |
|              2.0.1 | 11.0.1                         |
|              1.2.0 | 10.2.0                         |
|              1.1.1 | 10.0.0 or 10.0.1               |
|              1.0.0 | 9.8.0                          |
+--------------------+--------------------------------+

由于您使用的是Firebase / Play服务11.4.0,因此您需要使用FirebaseUI 2.4.0

compile 'com.firebaseui:firebase-ui-database:2.4.0'

详细了解FirebaseUI问题中的同一问题:UI incompatibility with other Firebase libs is not warned in documentation