7

Sto cercando di integrare Google Plus nella mia applicazione e mostra il seguente errore. sotto sono eccezione e gradinocom.android.build.transform.api.TransformException con servizi di google android play

Errore: esecuzione non riuscita per l'attività ': app: transformClassesWithDexForDebug'.

com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

app build.gradle

apply plugin: 'com.android.application' 
apply plugin: 'com.google.gms.google-services' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "xxx.com.xxxx" 
     multiDexEnabled true 
     minSdkVersion 15 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 

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

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:23.0.1' 
    //depend-materialcalendar 
    compile 'com.prolificinteractive:material-calendarview:0.8.1' 
    compile 'com.android.support:gridlayout-v7:23.0.1' 
    compile 'com.android.support:cardview-v7:23.0.1' 
    compile 'com.melnykov:floatingactionbutton:1.3.0' 
    //depend-cometchat 
    compile 'com.yalantis:contextmenu:1.0.4' 
    compile 'com.google.code.gson:gson:2.3' 
    compile files('libs/appcompat_v7.jar') 
    compile files('libs/cometchat-sdk.jar') 
    compile files('libs/jsoup-1.7.3.jar') 
    compile files('libs/picasso-2.5.2.jar') 
    compile 'com.google.android.gms:play-services:8.1.0' 
    compile 'com.google.android.gms:play-services-base:8.1.0' 
    compile 'com.google.android.gms:play-services-maps:8.1.0' 
    compile files('libs/volley.jar') 
    compile files('libs/PayPalAndroidSDK.jar') 
    compile files('libs/gcm.jar') 
    compile 'com.soundcloud.android:android-crop:[email protected]' 
    compile 'com.facebook.android:facebook-android-sdk:4.6.0' 
    compile 'com.android.support:multidex:1.0.0' 
    compile 'com.google.android.gms:play-services-plus:8.1.0' 
    compile 'com.google.android.gms:play-services-identity:8.1.0' 

} 

progetto build.gradle

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.3.0' 
     classpath 'com.google.gms:google-services:1.4.0-beta3' 
     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

risposta

14
  1. provare a pulire il vostro progetto e poi ri-costruzione.

  2. Prova ad aggiungere multiDexEnabled true nella tua app build.gradle file.

    defaultConfig { 
        multiDexEnabled true 
    } 
    
+2

cercato su Google Developer .. si dice dimensione app supera 65k.Penso che sia vero, solo ora integrato con l'applicazione di esempio e funziona bene – srinu

+1

Inoltre, questo potrebbe non essere un problema dex, come da questa risposta: http://stackoverflow.com/a/33026958/1174453 rimuovere la build e l'app/Costruire le cartelle potrebbe risolvere anche questo - anche se ho dovuto escludere un supporto esten-v4 lib che veniva introdotto con il sdk di Facebook prima che questo funzionasse, implicando che il limite del 65k metodo è almeno parzialmente in gioco qui. –

+0

L'eliminazione delle cartelle di build e la rimozione della libreria di supporto hanno funzionato per me. – Zapnologica

4

ho aggiunto questo sulla classe Application:

@Override 
protected void attachBaseContext(Context base) { 
    super.attachBaseContext(base); 
    MultiDex.install(this); 
} 

Nella mia app di file build.grade:

defaultConfig { 
    applicationId "com.example.android.exampleapp" 
    minSdkVersion 15 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    multiDexEnabled true 

} 

e ha aggiunto questo come dipendenza:

 compile 'com.android.support:multidex:1.0.0' 

Questo ha risolto il mio problema. Grazie

+0

Grazie mille fratello ..... l'ho risolto –

3

Ho appena avuto lo stesso problema nel mio progetto corrente quando ho spostato la versione di Android Gradle Plugin dalla 1.3.0 alla 1.5.0.

L'errore era quasi lo stesso come l'errore del PO tranne che java restituito il codice di errore 2.

Se infine scoperto che ho avuto lo stesso file jar incluso in due differenti moduli dell'app.

Versione 1.3.0 in grado di gestire questo senza problemi, per la versione 1.5.0 ho dovuto sostituire i file jar con una dipendenza per un modulo separato che conteneva una singola copia del file jar.

-3

basta eliminare le librerie di supporto e che funzionerà

0

Ho provato con l'aggiunta di

multiDexEnabled true 

ma non ha funzionato. poi ho cambiato la mia versione di build da 23.0.2 a

buildToolsVersion "23.0.3" 

quindi funziona. spero che possa aiutarti.

0

tenta di aggiungere queste righe nel vostro Gradle

dexOptions { 
    javaMaxHeapSize "4g" 
}