J'utilise Firebase pour mon Android et soudainement, je reçois une erreur lorsque j'ai essayé d'exécuter l'application. Samedi, cela fonctionnait parfaitement. Je ne sais pas comment cette erreur s'est produite et comment résoudre ce problème. Aidez-moi.
dépendances dans mon build.gradle
dependencies {
compile('com.crashlytics.sdk.Android:crashlytics:2.5.2@aar') {
transitive = true;
}
compile 'com.Android.volley:volley:1.0.0'
compile 'com.Android.support:appcompat-v7:23.4.0'
compile 'com.Android.support:cardview-v7:23.4.0'
compile 'com.facebook.Android:facebook-Android-sdk:4.1.0'
compile 'com.google.code.gson:gson:2.8.4'
compile 'com.Android.support:multidex:1.0.3'
compile 'com.Microsoft.Azure:azure-mobile-Android:3.1.0'
compile 'com.mixpanel.Android:mixpanel-Android:4.8.0'
compile 'com.firebase:firebase-client-Android:2.4.0'
compile 'com.google.firebase:firebase-core:16.0.0'
compile 'com.google.firebase:firebase-auth:16.0.1'
compile 'com.Android.support:support-v4:23.4.0'
compile 'com.Android.support:design:23.4.0'
compile 'com.j256.ormlite:ormlite-Android:4.48'
compile 'com.j256.ormlite:ormlite-core:4.48'
compile 'com.Android.support:recyclerview-v7:23.4.0'
compile 'com.github.tibolte:elasticdownload:1.0.+'
compile 'me.dm7.barcodescanner:zxing:1.8.4'
compile 'com.google.Android.gms:play-services-vision:15.0.2'
compile 'com.Android.support.constraint:constraint-layout:1.1.1'
compile 'com.github.amlcurran.showcaseview:library:5.4.3'
compile 'com.wang.avi:library:2.1.3'
testCompile 'junit:junit:4.12'
androidTestCompile 'com.jayway.Android.robotium:robotium-solo:5.6.0'
androidTestCompile 'com.Android.support.test:rules:1.0.2'
}
apply plugin: 'com.google.gms.google-services'
Dans mon niveau de projet build.gradle:
dependencies {
classpath 'com.Android.tools.build:gradle:2.2.2'
classpath 'com.google.gms:google-services:4.0.0'
}
L'erreur que j'obtiens:
Impossible de trouver une version correspondant à com.google.Android.gms: play-services-base: [15.0.1,16.0.0).
Assurez-vous d'avoir le référentiel google()
dans build.gradle au niveau du projet avant les autres:
allprojects {
repositories {
google()
mavenLocal()
jcenter()
}
}
J'ai rencontré le même problème après la mise à jour. Essayez de vérifier si vous avez installé les dernières versions de Build Tool et de Google Repository.
Vérifiez également que le projet build.gradle
du projet que vous utilisez google()
et le version de l'outil de construction . Après avoir vérifié le build.gradle
, Essayez de resynchroniser, nettoyer et reconstruire votre projet.
Si nécessaire, essayez de mettre à jour vers la dernière version des dépendances de votre projet.
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.1.3'
}
// ...
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Ajoutez cette ligne dans build.gradle
apply plugin: 'com.google.gms.google-services'
// Work around for onesignal-gradle-plugin compatibility
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
ou
googleServices.disableVersionCheck = true
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.google.Android.gms:play-services-auth:16.0.1'
}
apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
J'ai résolu ce problème avec ce build.gradle [Proyect]
buildscript {
ext.kotlin_version = '1.2.30'
repositories {
google()
jcenter()
maven {
url 'https://dl.bintray.com/Android/android-tools'
}
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.2.0'
}
}
était suffisant dans mon cas spécial (avec gms: v15.0.1
et base de feu: v16.0.1
).
Les raisons possibles seraient
Solution :
En plus des réponses ci-dessus, n'oubliez pas d'ajouter mavenLocal()
au niveau du projet build.gradle
allprojects {
repositories {
......
......
mavenLocal()
}
}
Cela permet d'accéder aux dépendances mises en cache lorsque le service n'est temporairement pas disponible
Tout à coup, sans aucun changement dans mon projet, je tombais en dessous de l'erreur.
ERREUR: impossible de résoudre la dépendance pour ': app @ debug/compileClasspath': impossible de résoudre com.google.Android.gms: play-services-location: [15.0.0, 16.0.0).
Au niveau du projet build.gradle
buildscript {
ext.kotlin_version = '1.3.21'
repositories {
google()
jcenter()
maven {
url 'https://dl.bintray.com/Android/android-tools'
}
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.3.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.2.0'
}
et
allprojects {
repositories {
google()
mavenCentral()
jcenter()
maven { url 'https://google.bintray.com/exoplayer/' }
}
}
avec les paramètres ci-dessus, je n'ai pas eu de chance.
Ci-dessous ce qui a fonctionné pour moi, j'ai trouvé que le problème est avec le signal
J'ai ajouté une clause d'exclusion à la dépendance:
implementation ('com.onesignal:OneSignal:3.10.5') {
exclude group: 'com.google.Android.gms'
}
puis ajouté manuellement les dépendances manquantes. Après avoir ajouté la clause d'exclusion, j'ai obtenu Impossible de résoudre com.google.firebase: firebase-messaging: [10.2.1, 12.1.0). Si vous trouvez d'autres dépendances manquantes, faites comme moi ci-dessous.
Au niveau du module build.gradle j'ai remplacé
implementation 'com.google.firebase:firebase-messaging:17.4.0' with
implementation 'com.google.firebase:firebase-messaging:10.2.1'
et enfin Build terminé avec succès. J'ai perdu presque 5 heures à ce sujet. J'espère que cela aide quelqu'un.
OPTION 1:
Suivez les instructions ci-dessous pour le résoudre.
Build.gradle au niveau du projet
tiliser
maven { url "https://www.jitpack.io" }
au lieu de
maven { url "https://jitpack.io" }
OPTION 2:
Suivez les étapes ci-dessous pour le résoudre.
Étape 1:
Build.gradle au niveau du projet
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.google.gms:google-services:4.2.0' // google-services plugin
classpath 'com.Android.tools.build:gradle:3.4.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
maven { url "https://jitpack.io" } // For Ucrop
maven { url "https://maven.google.com" } // Google's Maven repository - FCM
maven {
url 'https://dl.bintray.com/azeesoft/maven'
}
google()
jcenter()
mavenCentral()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Étape 2:
Build.gradle au niveau de l'application
J'ai mis à jour la version One Signal.
tiliser
implementation 'com.onesignal:OneSignal:3.11.1'
au lieu de
implementation 'com.onesignal:OneSignal:3.10.9'
Dans mon cas, tout fonctionnait bien, mais tout à coup, j'ai rencontré ce problème dans la prochaine "action d'exécution"!
Quoi qu'il en soit, le problème est résolu en mettant à jour com.google.gms:google-services
dans le fichier projet build.gradle à sa dernière version comme ci-dessous:
buildscript {
repositories {
jcenter()
mavenLocal()
mavenCentral()
maven {
url 'https://maven.google.com/'
name 'Google'
}
google()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.4.2'
classpath 'com.google.gms:google-services:4.3.0'
}
}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
maven { url "https://jitpack.io" }
google()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Assurez-vous également que:
- Vous n'êtes pas en mode hors ligne.
- Et si vous utilisez Http Proxy, vous pouvez vous connecter au référentiel google.
Remarque (dans l'exemple ci-dessus):
Android Studio: 3.4.2
compileSdkVersion 28
targetSdkVersion 28