首页 > 解决方案 > 如何正确地将快照侦听器添加到 Java 中的 Firebase Firestore 文档引用?

问题描述

我正在关注 Java (Android) 文档以进行实时更新,但是我收到了错误:EventListener takes no type parameters.

我删除<DocumentSnapshot> 了,但这只会导致进一步的错误。

这是文档中的代码块:

final DocumentReference docRef = db.collection("cities").document("SF");
docRef.addSnapshotListener(new EventListener<DocumentSnapshot>() {
    @Override
    public void onEvent(@Nullable DocumentSnapshot snapshot,
                        @Nullable FirebaseFirestoreException e) {
        if (e != null) {
            Log.w(TAG, "Listen failed.", e);
            return;
        }
        if (snapshot != null && snapshot.exists()) {
            Log.d(TAG, "Current data: " + snapshot.getData());
        } else {
            Log.d(TAG, "Current data: null");
        }
    }
});

上述示例与 Google 发布的文档相同。这是我正在关注的文档: https ://firebase.google.com/docs/firestore/query-data/listen

知道我做错了什么吗?

标签: javaandroidgoogle-cloud-firestore

解决方案


您可能导入了错误的 EventListner。确保您的导入是这样的:

import com.google.firebase.firestore.EventListener;

不是,例如,像这样:

import java.util.EventListener;

推荐阅读