未找到 com.google.android.gms.internal.zzaja 的类文件
Posted
技术标签:
【中文标题】未找到 com.google.android.gms.internal.zzaja 的类文件【英文标题】:Class file for com.google.android.gms.internal.zzaja not found 【发布时间】:2016-10-30 15:11:48 【问题描述】:我正在使用 Fragment 来设计 Firebase 简单的登录注册。
OnCreateView()
方法在初始化时出错
auth = FirebaseAuth.getInstance();
错误:- 错误:(58, 28) 错误: 无法访问 zzaja 找不到 com.google.android.gms.internal.zzaja 的类文件 请帮忙 来源:-http://www.androidhive.info/2016/06/android-getting-started-firebase-simple-login-registration-auth/
【问题讨论】:
【参考方案1】:我今天解决了这个确切的问题,并在此过程中偶然发现了这个未回答的问题。
首先,确保您已正确设置 Firebase for Android,如下所述:https://firebase.google.com/docs/android/setup。然后,确保您正在编译您正在使用的最新版本的 Firebase API (9.2.0) 和 Google Play Services API (9.2.0)。我的 gradle 依赖项看起来像这样:
dependencies
...
compile 'com.google.android.gms:play-services-location:9.2.0'
compile 'com.google.firebase:firebase-core:9.2.0'
compile 'com.google.firebase:firebase-auth:9.2.0'
compile 'com.google.firebase:firebase-messaging:9.2.0'
希望这会有所帮助!
【讨论】:
另外值得注意的是,如果您使用开源 FirebaseUI 库,那么请从那里为 Firebase 平台的所有组件使用依赖项,或者确保您的 FirebaseUI 库使用与其他 Firebase 组件相同的内部版本。 TD;DR bad:compile 'com.firebaseui:firebase-ui-auth:1.0.0' compile 'com.google.firebase:firebase-database:10.0.0'
good:compile 'com.firebaseui:firebase-ui-auth:1.0.0' 'compile 'com.firebaseui:firebase-ui-database:1.0.0'
或编译 'com.firebaseui:firebase-ui-auth:1.0.0' 编译 'com.google。 firebase:firebase-database:9.8.0'`
更新到 10.0.1 后修复【参考方案2】:
如果您使用多个 firebase 库,请确保版本相同。
Before:
compile 'com.google.firebase:firebase-database:9.2.0'
compile 'com.google.firebase:firebase-storage:9.2.0'
compile 'com.firebaseui:firebase-ui-database:0.4.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.google.firebase:firebase-auth:9.0.2'
After: compile 'com.google.firebase:firebase-database:9.2.0'
compile 'com.google.firebase:firebase-storage:9.2.0'
compile 'com.firebaseui:firebase-ui-database:0.4.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.google.firebase:firebase-auth:9.2.0'
在我的情况下,我使用 9.0.2 的身份验证。所以我改为 9.2.0
【讨论】:
【参考方案3】:您所有的 firebase 版本都应该使用相同的版本
喜欢这个
compile 'com.google.firebase:firebase-core:9.0.0'
compile 'com.google.firebase:firebase-database:9.0.0'
compile 'com.google.firebase:firebase-auth:9.0.0'
compile 'com.google.firebase:firebase-messaging:9.0.0'
【讨论】:
【参考方案4】:当我最近升级我的播放服务依赖项时,我遇到了类似的错误。 当您没有更新与您使用的播放服务版本相对应的 firebase 依赖项时,似乎会发生这种情况。我相信这是这些依赖项的最新更新
这是我的两个版本的依赖项:
依赖版本错误
compile 'com.google.firebase:firebase-appindexing:10.0.1'
compile 'com.google.android.gms:play-services-maps:10.0.1'
compile 'com.google.android.gms:play-services-places:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile 'com.google.firebase:firebase-auth:9.8.0'
compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.firebaseui:firebase-ui-database:1.0.1'
compile 'com.google.firebase:firebase-storage:9.8.0'
依赖的工作版本 ``
compile 'com.google.firebase:firebase-appindexing:10.0.1'
compile 'com.google.android.gms:play-services-maps:10.0.1'
compile 'com.google.android.gms:play-services-places:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile 'com.google.firebase:firebase-auth:10.0.0'
compile 'com.google.firebase:firebase-database:10.0.0'
compile 'com.firebaseui:firebase-ui-database:1.0.1'
compile 'com.google.firebase:firebase-storage:10.0.0'
`` 如今,谷歌似乎将播放服务更新与 Firebase 更新一起移动。希望这能拯救一些灵魂。
【讨论】:
【参考方案5】:我在 2017 年 6 月解决了这个问题,将播放服务版本更改为最新的 firebase 版本 (9.6.1)。当我使用最新的播放服务版本(10.2.4)时,我得到了那个错误。 gradle 中的代码如下所示:
之前
compile 'com.google.android.gms:play-services-maps:10.2.4'
compile 'com.google.android.gms:play-services-places:10.2.4'
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-auth:9.6.1'
之后
compile 'com.google.android.gms:play-services-maps:9.6.1'
compile 'com.google.android.gms:play-services-places:9.6.1'
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-auth:9.6.1'
【讨论】:
【参考方案6】:用途:
compile 'com.google.firebase:firebase-auth:11.0.4'
这行得通。
【讨论】:
【参考方案7】:如果你使用不同版本的播放服务库,你会得到这个错误。
例如,build.gradle 文件中的以下条目会导致错误,因为版本不同。
implementation 'com.google.android.gms:play-services-maps:11.4.2'
implementation 'com.google.android.gms:play-services-location:11.6.0'
要解决此问题,请使用相同的版本。
implementation 'com.google.android.gms:play-services-maps:11.6.0'
implementation 'com.google.android.gms:play-services-location:11.6.0'
【讨论】:
【参考方案8】:我也有同样的问题。将旧版本的 FirebaseAuth 更改为新版本。对我来说,我将 "com.google.firebase:firebase-auth:11.4.0"
更改为 "com.google.firebase:firebase-auth:11.8.0"
【讨论】:
【参考方案9】:如Google documentation 中所述,添加最新版本的 Google 服务插件(4.0.1 于 06/04/18)。希望这有帮助!
buildscript
// ...
dependencies
// ...
classpath 'com.google.gms:google-services:4.0.1' // google-services plugin
`
【讨论】:
【参考方案10】:对我有用的播放服务、firebase、gradle 插件最新版本组合。 试试 app 模块 build.gradle
android
compileSdkVersion 27
buildToolsVersion '27.0.3'
defaultConfig
applicationId "my package name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
multiDexEnabled true
publishNonDefault true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
dependencies
implementation 'com.google.android.gms:play-services-location:15.0.1'
implementation 'com.google.android.gms:play-services-maps:15.0.1'
implementation 'com.google.android.gms:play-services-vision:15.0.2'
implementation 'com.google.android.gms:play-services-analytics:16.0.1'
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-iid:17.0.0'
implementation 'com.google.firebase:firebase-messaging:17.3.0'
implementation 'com.google.firebase:firebase-crash:16.0.1'
apply plugin: 'com.google.gms.google-services'
和项目级的build.gradle这样
buildscript
repositories
maven url 'https://maven.google.com'
google()
jcenter()
dependencies
classpath 'com.android.tools.build:gradle:3.1.4'
classpath 'com.google.gms:google-services:4.1.0'
【讨论】:
【参考方案11】:不要混用 12 和 15,用这个
implementation 'com.google.firebase:firebase-core:16.0.0'
implementation 'com.google.firebase:firebase-auth:16.0.1'
implementation 'com.google.firebase:firebase-messaging:17.0.0'
【讨论】:
【参考方案12】:您可以通过获取 最新版本 Firebase Libraries for Android SDK 轻松解决此问题。
您可以从https://firebase.google.com/docs/android/setup获取最新的库
示例:
之前:
implementation 'com.google.firebase:firebase-auth:10.6.0'
到
之后:
implementation 'com.google.firebase:firebase-auth:16.0.4'
【讨论】:
【参考方案13】:嗯,简短的回答是:更新您的库版本。 Android Studio 会告诉你它有一个新版本,并带有如下消息:
com.google.firebase:firebase-core 比 14.0.4 更新的版本是 可用:16.0.4
只需移至该行,按 Alt + Enter 并选择更改为 X.X,其中 X.X 是较新的版本。
这样,您可以更新所有库。 对所有库重复该过程,您就完成了。
【讨论】:
这是一个非常好的主意“按 Alt + Enter 并选择更改为 X.X”它很容易更改版本,否则先做谷歌然后更改它。【参考方案14】:只需确保您使用的所有 firebase 实现在 build.gradle (app) 的依赖项中具有相同的版本。
【讨论】:
【参考方案15】:我也遇到了同样的问题。通过将库更新到最新版本将解决此问题。
更新后别忘了用 gradle 文件同步项目。
【讨论】:
【参考方案16】:只需将这两个依赖项添加到您的 pubspec.yml。这对我有用。
firebase_messaging:^5.0.1 firebase_core: ^0.3.0
【讨论】:
【参考方案17】:此错误仅因版本不同而发生。每当发生这种错误时,请尝试更改 SDK 版本、Gradle Build 版本或依赖项版本。 如果你正在使用
targetSdkVersion = 26
compileSdkVersion = 26
'com.android.tools.build:gradle:3.6.3'
然后为 firebase 依赖项添加此版本。
implementation 'com.google.firebase:firebase-core:11.6.0'
implementation 'com.google.firebase:firebase-database:11.6.0'
implementation 'com.google.firebase:firebase-auth:11.6.0'
有效。
【讨论】:
所有这些库有什么正确的版本匹配吗?以上是关于未找到 com.google.android.gms.internal.zzaja 的类文件的主要内容,如果未能解决你的问题,请参考以下文章