我正在将我的Android应用项目从GCM
迁移到FCM
。为此,我在Android Studio中使用Firebase助手工具,并遵循Google开发人员指南的说明。一切都很顺利,并根据助手工具更改了我的FCM
应用程序代码。现在,是时候运行和测试应用程序了。我发现了一个奇怪的错误:
无法访问com. google. android. gms. internal的zzbfm类文件。未找到zzbfm
我得到这个错误,我使用谷歌Map,并试图设置标记的位置。这是我的应用程序级别gradle:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
mavenCentral()
maven { url 'https://dl.bintray.com/kennyc1012/maven' }
}
android {
signingConfigs {
msapp {
}
}
compileSdkVersion 26
buildToolsVersion '27.0.3'
defaultConfig {
applicationId "com.package"
minSdkVersion 16
targetSdkVersion 28
multiDexEnabled true
useLibrary 'org.apache.http.legacy'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
renderscriptTargetApi 18
renderscriptSupportModeEnabled true
}
dexOptions {
javaMaxHeapSize "4g"
}
buildTypes {
release {
lintOptions {
checkReleaseBuilds false
abortOnError false
}
minifyEnabled false
shrinkResources false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
//Default
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.google.firebase:firebase-messaging:11.8.0'
testImplementation 'junit:junit:4.12'
//modules
implementation 'com.facebook.android:facebook-android-sdk:4.+'
//jar files
implementation files('libs/classes.jar')
implementation files('libs/YouTubeAndroidPlayerApi.jar')
//google repos
implementation 'com.android.support:appcompat-v7:26.0.0'
implementation 'com.android.support:support-v4:26.0.0'
implementation 'com.android.support:recyclerview-v7:26.0.0'
implementation 'com.google.android.gms:play-services:11.8.0'
implementation 'com.google.android.gms:play-services-analytics:11.8.0'
implementation 'com.google.android.gms:play-services-maps:11.8.0'
implementation 'com.android.support:design:26.0.0'
//square lib
implementation 'com.squareup.retrofit2:converter-gson:2.0.0'
//compile 'com.squareup.leakcanary:leakcanary-android:1.5'
//text manupulation
implementation 'commons-lang:commons-lang:2.6'
//permission library.
implementation 'com.karumi:dexter:5.0.0'
implementation 'com.google.firebase:firebase-core:16.0.3'
}
apply plugin: 'com.google.gms.google-services'
6条答案
按热度按时间erhoui1w1#
为了解决您的问题,首先我会要求您始终使用指定和更新的版本。1.在此处将+替换为特定版本:
classpath 'io.fabric.tools:gradle:1.25.4'
2。尝试使用相同的版本,现在运行的apk,3.使用Google Play服务的更新版本
这将解决您的问题。
w1e3prcc2#
请将您的Firebase和Google Library更改为相同版本。对于这样的例子
sczxawaw3#
我在迁移AndroidX后也遇到了同样的问题,通过修改Map和位置的gms库版本解决,如下所示:
emeijp434#
在大多数情况下,升级play-services和firebase版本依赖项是必需的,如果你使用的是androidx,可能是最后一个可用的,但如果不是:
尝试检查出maven_repository并选择一些版本,帮助您修复它。例如:
选择的版本是版本17之前的最后一个版本,因为v17.0.0需要androidx(在play-service中)
不要忘记在build.gradle(项目)中更新Google-service
eoxn13cs5#
根据有关Latest SDK versions的官方文档,请更改以下代码行:
到
根据关于set up Google Play Services的官方文档,请更改以下代码行:
到
请确保拥有:
在顶级
build.gradle
文件中。oyxsuwqo6#
只需将库“...... gms:play-services.....”的版本更新为最新版本。要检查最新版本,请参阅此link