Android Firebase firestore.QuerySnapshot.getDocumentChanges()';关于空对象引用

Android Firebase firestore.QuerySnapshot.getDocumentChanges()';关于空对象引用,android,firebase,google-cloud-firestore,Android,Firebase,Google Cloud Firestore,我有一个奇怪的问题,在我的firestore应用程序中从未出现过,我有一个Recyclerview,我想在其中显示firestore中的图像和文本,我得到了以下错误 java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“java.util.List com.google.firebase.firestore.QuerySnapshot.getDocumentChanges()” 以下是我在firestore中的数据显示方式: 下面是我的活动课 包rimap

我有一个奇怪的问题,在我的firestore应用程序中从未出现过,我有一个Recyclerview,我想在其中显示firestore中的图像和文本,我得到了以下错误

java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“java.util.List com.google.firebase.firestore.QuerySnapshot.getDocumentChanges()”

以下是我在firestore中的数据显示方式:

下面是我的活动课

包rimapps.appslet.lchfmalayalam.view;
导入android.os.Bundle;
导入android.support.v7.app.AppActivity;
导入android.support.v7.widget.LinearLayoutManager;
导入android.support.v7.widget.RecyclerView;
导入android.util.Log;
导入com.google.firebase.FirebaseApp;
导入com.google.firebase.firestore.DocumentChange;
导入com.google.firebase.firestore.EventListener;
导入com.google.firebase.firestore.FirebaseFirestore;
导入com.google.firebase.firestore.FirebaseFirestoreException;
导入com.google.firebase.firestore.QuerySnapshot;
导入java.util.ArrayList;
导入java.util.List;
导入rimapps.appslet.lchfmalayalam.R;
导入rimapps.appslet.lchfmalayalam.adapter.BreakfastAdapter;
导入rimapps.appslet.lchfmalayalam.model.contentsbbreakfast;
公共类早餐活动扩展了AppCompatActivity{
私有FirebaseFirestore数据库;
私有静态最终字符串TAG=“BreakfastActivity”;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
FirebaseApp.initializeApp(本);
setContentView(右布局、活动和早餐);
RecyclerView recbrf=(RecyclerView)findViewById(R.id.rec_brf);
recbrf.setNestedScrollingEnabled(false);
final List breakfastList=new ArrayList();
recbrf.setLayoutManager(新的LinearLayoutManager(getApplicationContext());
final BreakfastAdapter Adapter B=新的BreakfastAdapter(breakfastList,getApplicationContext());
recbrf.设置适配器(适配器B);
db=FirebaseFirestore.getInstance();
db.collection(“早餐”).addSnapshotListener(新的EventListener(){
@凌驾
public void OneEvent(QuerySnapshot文档快照,FireBaseFireStore异常e){
如果(e!=null){
Log.d(标记“Error:+e.getMessage());
}
对于(DocumentChange文档:documentSnapshots.getDocumentChanges()){
if(doc.getType()==DocumentChange.Type.ADDED){
//字符串标题=doc.getDocument().getString(“标题”);
ContentsBreakfast bfname=doc.getDocument().toObject(ContentsBreakfast.class);
早餐清单。添加(bfname);
adapterb.notifyDataSetChanged();
}
}}
});
}
}
这是我的Recyclerview适配器类

包rimapps.appslet.lchfmalayalam.adapter;
导入android.content.Context;
导入android.content.Intent;
导入android.support.annotation.NonNull;
导入android.support.v7.widget.CardView;
导入android.support.v7.widget.RecyclerView;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.ImageView;
导入android.widget.TextView;
导入com.bumptech.glide.glide;
导入com.bumptech.glide.load.engine.DiskCacheStrategy;
导入com.bumptech.glide.request.RequestOptions;
导入com.squareup.okhttp.OkHttpClient;
导入com.squareup.okhttp.Protocol;
导入java.util.ArrayList;
导入java.util.array;
导入java.util.List;
导入rimapps.appslet.lchfmalayalam.R;
导入rimapps.appslet.lchfmalayalam.model.contentsbbreakfast;
导入rimapps.appslet.lchfmalayalam.view.RecipeView;
公共类BreakfastAdapter扩展了RecyclerView.Adapter{
List breakfastlist=新建ArrayList();
语境;
公共早餐适配器(列表早餐列表,上下文){
this.breakfastlist=早餐列表;
this.context=上下文;
}
@非空
@凌驾
public BreakfastAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup父级,int-viewType){
View itemView=LayoutInflater.from(parent.getContext())
.充气(右布局早餐卡、家长卡、假卡);
返回新的BreakfastAdapter.ViewHolder(itemView);
}
@凌驾
public void onBindViewHolder(@NonNull ViewHolder,int位置){
holder.brfname.setText(breakfastlist.get(position.getBfname());
OkHttpClient=新的OkHttpClient();
setProtocols(Arrays.asList(Protocol.HTTP_1_1));
RequestOptions=newrequestoptions()
.placeholder(R.drawable.placeholder)
.错误(R.drawable.browser)
.diskCacheStrategy(diskCacheStrategy.ALL);
带(上下文)滑动
.load(breakfastlist.get(position.getBfimg())
.应用(选项)
.into(holder.brfimg);
holder.card\u brf.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
意向意向=新意向(上下文,RecipeView.class);
背景。开始触觉(意图);
}
});
}
@凌驾
public int getItemCount(){
返回breakfastlist.size();
}
公共类ViewHolder扩展了RecyclerView.ViewHolder{
公共文本视图brfname;
公共图像视图brfimg;
公共卡查看卡;
公共视图持有者(视图项视图){
超级(项目视图);
card_brf=(cardwiew)itemView.findviewbyd(R.id.brf_card);
brfname=(TextView)itemView.findViewById(R.id.brf_name);
brfimg=(ImageView)itemView.findViewById(R.id.brf_image);
}
}}
下面的代码包含m
public void onEvent(QuerySnapshot documentSnapshots, FirebaseFirestoreException e) {
    if (e!=null){
        Log.d(TAG,"Error:"+e.getMessage());
    }
    else {
        for (DocumentChange doc: documentSnapshots.getDocumentChanges()){
            if (doc.getType() == DocumentChange.Type.ADDED){
                ContentsBreakfast vidtitle= doc.getDocument().toObject(ContentsBreakfast.class);
                breakfastList.add(vidtitle);
                adapterb.notifyDataSetChanged();
            }
        }
    }
});