2016-07-05 50 views
6

Ricevo il seguente messaggio di avviso nel mio grado di compilazione per la riga compile 'com.google.android.gms:play-services-analytics:9.2.0'. Cosa significa questo?Tutte le librerie com.google.android.gms devono utilizzare esattamente la stessa specifica di versione?

All com.google.android.gms libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 9.2.0, 8.4.0. Examples include com.google.android.gms:play-services-basement:9.2.0 and com.google.android.gms:play-services-ads:8.4.0 less... (Ctrl+F1) 
There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion.) 

Ecco la mia app build.gradle:

plugins { 
    id "me.tatarka.retrolambda" version "3.2.5" 
} 

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 24 
    buildToolsVersion '23.0.3' 

    defaultConfig { 
     applicationId "com.elgami.customizer" 
     minSdkVersion 15 
     targetSdkVersion 24 

     multiDexEnabled true // Enabling multidex support. 
     renderscriptTargetApi 23 
     renderscriptSupportModeEnabled true 
    } 

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

    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 
} 

repositories { 
    mavenCentral() 
    maven { url "https://jitpack.io" } 
} 

dependencies { 
    compile 'com.facebook.android:audience-network-sdk:4.13.0' 
    compile 'com.bartoszlipinski:recyclerviewheader2:2.0.1' 
    compile 'com.ms-square:etsyblur:0.1.3' 
    compile 'com.android.support:appcompat-v7:24.0.0' 
    // recyclerview 
    compile 'com.android.support:recyclerview-v7:24.0.0' 
    // google analytics` 
    compile 'com.google.android.gms:play-services-analytics:9.2.0' 
    compile 'com.google.android.gms:play-services-appindexing:9.2.0' 
    // amazon S3 uploads todo remove (5k methods) 
    compile 'com.amazonaws:aws-android-sdk-s3:2.2.18' 
    // paypal purchasing todo change to 'compile' (2k more methods..?) 
    compile files('libs/PayPalAndroidSDK-2.7.1.jar') 

    // Module dependency on ParseLoginUI library sources 
    compile project(':ParseLoginUI') 

    // Consider using these in future - Wes Feb 2016 
    //compile 'com.parse:parseui-login-android:0.0.1' 
    //compile 'com.parse:parseui-widget-android:0.0.1' 

    // Parse 
    compile 'com.parse:parse-android:1.13.0' 
    compile 'com.parse:parsetwitterutils-android:1.10.5' 
    compile 'com.parse:parsefacebookutils-v4-android:[email protected]' 

    // excluding bolts-android because parse-android uses bolts-tasks which conflicts 
    // hint: use 'gradlew app:dependencies' to inspect 
    compile('com.facebook.android:facebook-android-sdk:4.9.0') { 
     exclude module: 'bolts-android' 
     exclude module: 'bolts-tasks' 
    } 

    // butterknife 
    compile 'com.jakewharton:butterknife:6.1.0' 
    // app rater 
    compile files('libs/AppRater.jar') 

    // retrofit http api 
    compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4' 
    compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta4' 
    compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4' 
    compile 'com.squareup.okhttp3:logging-interceptor:3.0.1' 
    // reactivex 
    compile 'io.reactivex:rxjava:1.1.1' 
    compile 'io.reactivex:rxandroid:1.1.0' 
    // picasso image loading 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    // stripe for payment processing 
    compile 'com.stripe:stripe-android:1.0.4' 
} 

-livello di progetto Gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules. 
buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.1.2' 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 
+0

per favore pubblica il tuo livello di progetto gradle. –

+0

Ho appena fatto ma non c'è molto da fare. – santafebound

+0

Pensi che compili '' 'com.facebook.android: audience-network-sdk: 4.13.0''' potrebbe interferire con '' compile (' com.facebook.android:facebook-android-sdk:4.9.0 ') ''? – santafebound

risposta

12

Ho lo stesso problema per ora aggiungo pubblico-network -sdk as

compile('com.facebook.android:audience-network-sdk:4.17.0') { 
    exclude group: 'com.google.android.gms' 
} 

per ora non mostra errore su gradle. ma non ho implementato le pubblicità in questo momento, spero che non causerà errori di runtime.

ps: funziona come un fascino

+0

Questo ha funzionato come un fascino, apprezzato! – blueware