我有一个链接到Firebase的Android项目,我尝试按照Firebase tutorial使用firebase.auth
包设置Firebase身份验证。
问题
我需要一个FirebaseUser
变量。但是当我尝试使用以下导入导入时,Android Studio只会突出显示FirebaseUser
部分红色。当我将鼠标悬停在它上面时,表示它无法解决它。当然,当我尝试在一个类中声明它时,它会变红。
import com.google.firebase.auth.FirebaseUser;
试图弄清楚出了什么问题
在我的应用级build.gradle文件中,我有以下依赖项:
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.android.support:recyclerview-v7:24.2.1'
compile 'com.firebaseui:firebase-ui-database:0.4.0'
compile 'com.google.firebase:firebase-auth:9.4.0'
所以我确实导入了firebase-auth
包。
接下来,当我查看gradle外部库时,我在FirebaseAuth
路径下导入了classes.jar/com.google/android.gms.internal/firebase.auth
类,还有一堆其他类。但是,我没有看到通过gradle导入FirebaseUser
类。
问题:我做错了什么?
我的一些假设是:
build.gradle
中的错误导入声明 - 可能是错误的版本号最后请注意,我没有对清单文件进行任何编辑。
答案 0 :(得分:3)
您必须使用所有Firebase库的相同版本。您可以将firebase-auth
升级到9.8.0或将firebase-database
降级为9.4.0。
您还必须使用Firebase UI docs中提供的表格中定义的firebase-ui-database
的匹配版本。文档还解释了UI库对其他Firebase库具有传递依赖性。在您的情况下,您可以从列表中删除firebase-database
。
示例:
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
//compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.android.support:recyclerview-v7:24.2.1'
compile 'com.firebaseui:firebase-ui-database:1.0.0'
compile 'com.google.firebase:firebase-auth:9.8.0'
答案 1 :(得分:1)
使用最新的依赖项。 将您的版本替换为11.6.2的google服务和firebase-ui-database:1.0.2如果您的编译版本是26或更高版本。