gpt4 book ai didi

java - 从 Firebase 读取时出错错误 : ValueEventListener

转载 作者:行者123 更新时间:2023-12-01 21:22:24 28 4
gpt4 key购买 nike

我正在尝试使用代码 straight from their documentation 从 Firebase 数据库中读取数据。我的代码如下,当我尝试将 ValueEventListener 添加到我的 Firebase 引用 变量时,我看到以下错误。

addValueEventListener (com.firebase.client.ValueEventListener) in Query cannot be applied to (com.firebase.client.ValueEventListener)

我很困惑为什么会出现此错误,因为以下是我在 Java 类文件顶部使用的 import 语句。

import com.google.firebase.database.ValueEventListener;

基本上,我只是想从运行的 Firebase 中获得基本的读取信息。我做错了什么?

public void readfromFireDB() {
Firebase ref = new Firebase("https://my_project.firebaseio.com/");

ValueEventListener postListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {

for(DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
Question qn = postSnapshot.getValue(Question.class);
mLog.printToLog("RECEIVED DATA = " + qn.getAnswer() + "," + qn.getLevel());
}
}

@Override
public void onCancelled(DatabaseError databaseError) {
mLog.printToLog("in onCancelled, database error = " + databaseError.toString());
}
};

ref.addValueEventListener(postListener); //THIS IS WHERE THE ERROR IS

}

enter image description here

更新:使用整个类名后仍然遇到同样的问题:com.google.firebase.database.ValueEventListener postListener = new com.google.firebase.database.ValueEventListener() { ... }

enter image description here

最佳答案

您将旧版 SDK (2.X) 中的类与新 SDK (9.X) 混合。 Firebase是遗产,ValueEventListener是新的。

要使用新的 SDK,所有导入都应以 com.google.firebase.database 开头。

旧版导入以 com.firebase.client 开头。

我假设您想使用新的 SDK。如果是这样,您的模块 build.gradle 依赖项应包括:

compile 'com.google.firebase:firebase-database:9.4.0'

并且不应该包括:

compile 'com.firebase:firebase-client-android:2.5.0'

关于java - 从 Firebase 读取时出错错误 : ValueEventListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38924846/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com