2016-10-23 2 views
0

J'essaie d'inclure JWPlayer dans mon projet en utilisant Maven repo. Le problème est que les conflits de bibliothèque avec com.google.android.gms:play-services-auth:9.6.1Android JWPlayer en conflit avec Play Services

Message d'erreur:

All com.google.android.gms libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 9.6.1, 8.3.0. Examples include com.google.android.gms:play-services-basement:9.6.1 and com.google.android.gms:play-services-ads:8.3.0 

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.) 

j'ai essayé d'exclure la bibliothèque en utilisant les lignes suivantes, mais il ne fonctionne pas

compile ('com.longtailvideo.jwplayer:jwplayer-android-sdk:+') { 
    exclude module('com.google.android.gms:play-services-auth:8.3.0') 
} 

Toute idée résoudre cela?

contenu build.gradle:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "24.0.2" 

    defaultConfig { 
     applicationId "xxxxxxxxxxxxx" 
     minSdkVersion 19 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
    } 

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

    dataBinding { 
     enabled = true 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:25.0.0' 
    compile 'com.android.support:design:25.0.0' 
    compile 'com.google.firebase:firebase-core:9.6.1' 
    compile 'com.google.firebase:firebase-database:9.6.1' 
    compile 'com.google.firebase:firebase-crash:9.6.1' 
    compile 'com.google.firebase:firebase-auth:9.6.1' 
    compile 'com.google.firebase:firebase-messaging:9.6.1' 
    compile 'com.google.android.gms:play-services-auth:9.8.0' 
    compile 'com.facebook.android:facebook-android-sdk:4.15.0' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.google.android.exoplayer:exoplayer:r2.0.1' 
    compile ('com.longtailvideo.jwplayer:jwplayer-android-sdk:+'){ 
     exclude group: 'com.android.support' 
     exclude group: 'com.google.android.gms' 
    } 
} 

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

Répondre

2

D'abord, vous devez lire les pom de jwplayer: vous y trouverez la liste des dépendances de votre dépendance. Ensuite, vous pouvez décider d'exclure les modules:

compile ('com.longtailvideo.jwplayer:jwplayer-android-sdk:+') { 
    exclude module: 'appcompat-v7' 
    exclude module: 'play-services-ads' 
} 

ou groupes:

compile ('com.longtailvideo.jwplayer:jwplayer-android-sdk:+') { 
    exclude group: 'com.android.support' 
    exclude group: 'com.google.android.gms' 
} 

ou un module d'un groupe:

compile ('com.longtailvideo.jwplayer:jwplayer-android-sdk:+') { 
    exclude group: 'com.android.support', module: 'appcompat-v7' 
    exclude group: 'com.google.android.gms', module: 'play-services-ads' 
} 

en fonction de vos besoins.

+0

Nice avec les conseils de pom, vraiment utile! Le problème est que la construction échoue toujours avec l'autre erreur: 'Erreur: exécution échouée pour la tâche ': app: processDebugGoogleServices'. > Corrigez le conflit de versions en mettant à jour la version du plugin google-services ou en mettant à jour la version de com.google.android.gms en 9.6.1. »Une idée pourquoi? –

+0

Oui, j'ai essayé tout ce qui précède –

+0

J'ai posté le contenu build.gradle –