我在我的Android应用程序中使用firebase,当我尝试运行应用程序时突然发现错误。星期六,它工作得很好。我不知道这个错误是如何发生的,以及如何解决这个问题。请帮我。
我的build.gradle中的依赖项
JSONObject xmlJSONObj = XML.toJSONObject(returnStrXML);
在我的项目级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'
我得到的错误:
找不到与com.google.android.gms匹配的任何版本:play-services-base:[15.0.1,16.0.0)。
答案 0 :(得分:16)
确保在项目级build.gradle中有google()
存储库,然后才能执行任何其他存储库:
allprojects {
repositories {
google()
mavenLocal()
jcenter()
}
}
答案 1 :(得分:7)
我在更新后遇到了同样的问题。尝试验证您是否安装了最新的Build Tool和Google Repository版本。
另外,请验证您正在使用的{strong>项目的build.gradle
google()
和构建工具版本。检查build.gradle
后,尝试重新同步,清理并重新构建项目。
如果需要,请尝试更新到项目依赖项的最新版本。
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
}
答案 2 :(得分:4)
在build.gradle中添加此行
apply plugin: 'com.google.gms.google-services'
// Work around for onesignal-gradle-plugin compatibility
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
答案 3 :(得分:2)
答案 4 :(得分:1)
我用这个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'
}
}
答案 5 :(得分:1)
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
答案 6 :(得分:1)
可能的原因是
解决方案:
关于以上答案,别忘了在项目级别mavenLocal()
内添加build.gradle
allprojects {
repositories {
......
......
mavenLocal()
}
}
这有助于在服务暂时不可用时访问缓存的依赖项
答案 7 :(得分:0)
在我的特殊情况下就足够了(使用 gms:v15.0.1
和 firebase:v16.0.1
)。
答案 8 :(得分:0)
突然之间,我的项目没有任何变化,我的错误就消失了。
错误:无法解析':app @ debug / compileClasspath'的依赖关系:无法解析com.google.android.gms:play-services-location:[15.0.0,16.0.0)。
在项目级别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'
}
和
allprojects {
repositories {
google()
mavenCentral()
jcenter()
maven { url 'https://google.bintray.com/exoplayer/' }
}
}
使用上述设置,我没有运气。
下面是对我有用的 我发现问题出在onesignal上
我在依赖项中添加了exclude子句:
implementation ('com.onesignal:OneSignal:3.10.5') {
exclude group: 'com.google.android.gms'
}
然后手动添加缺少的依赖项。 添加排除条款后,我无法解析com.google.firebase:firebase-messaging:[10.2.1,12.1.0)。如果您发现其他缺少的依赖项,请按照下面的步骤进行操作。
在模块级别的build.gradle中,我替换了
implementation 'com.google.firebase:firebase-messaging:17.4.0' with
implementation 'com.google.firebase:firebase-messaging:10.2.1'
,最后构建成功完成。我为此花了将近5个小时。希望这可以帮助一些人。
答案 9 :(得分:0)
就我而言,一切正常,但是突然我在下一个“运行动作”中遇到了这个问题!
无论如何,通过将 project build.gradle 文件中的com.google.gms:google-services
更新为其最新版本,可以解决该问题,如下所示:
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
}
此外,请确保:
-您未处于离线模式。
-如果您使用的是 Http代理,则可以连接到Google存储库。
注意(在上面的示例中):
Android Studio :3.4.2
compileSdkVersion 28
targetSdkVersion 28
答案 10 :(得分:0)
选项1:
按照以下说明进行操作。
项目级build.gradle
使用
maven { url "https://www.jitpack.io" }
代替
maven { url "https://jitpack.io" }
选项2:
请按照以下步骤进行解决。
第1步:
项目级build.gradle
// 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
}
第二步:
应用程序级build.gradle
我已经更新了一个信号版本。
使用
implementation 'com.onesignal:OneSignal:3.11.1'
代替
implementation 'com.onesignal:OneSignal:3.10.9'
答案 11 :(得分:0)
更改
implementation('com.onesignal:OneSignal:3.15.1')
使用
implementation('com.onesignal:OneSignal:3.15.1') {
exclude group: 'com.android.support', module: 'customtabs'
exclude group: 'com.google.android.gms'
}
解决了我的问题。
答案 12 :(得分:0)
这对我有用。在项目级Gradle文件中,使用以下顺序:
repositories {
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}
allprojects {
repositories {
google()
mavenCentral()
maven {
url "https://jitpack.io"
}
jcenter()
}
}
答案 13 :(得分:-1)
apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true