gpt4 book ai didi

android - 如何通过类中的方法通过 FirebaseFirestore 查询检索数据列表?

转载 作者:行者123 更新时间:2023-11-30 05:01:51 24 4
gpt4 key购买 nike

<分区>

我有一个 Firebase 数据库。我想创建一个查询并将其放入 DBUtils 类的方法中,以便我可以从 Android 项目中的不同 Activity 调用查询。

例如,像这样的东西:

ArrayList<String> aStringArrayList = DBUtils.GetAllJobsOnADate(Date date);
.
.
.
// use aStringArrayList to populate a listview.

 public  static ArrayList<String> GetJobsOnADate(Date date) {
final ArrayList<String> mReturnList = new ArrayList<String>();
FirebaseFirestore db = FirebaseFirestore.getInstance();
db.collection("jobs")
.whereEqualTo("job_date", date)
.get()
.addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
@Override
public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
for (QueryDocumentSnapshot queryDocumentSnapshot : queryDocumentSnapshots) {
mReturnList.add(queryDocumentSnapshot.get("job_title"));
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// failure code
}
});
return mReturnList;
}

当我调试应用程序时,我可以看到 get() 确实返回了一个 QuerySnapshotDocument 列表(可以看到在 onSuccessListner 代码中遇到的断点)但是 aStringArray 始终为空。

尝试使用 AsyncTask (onPostExecute)。也不行。

当然,如果代码在同一 Activity 的函数中,则可以正常工作。但是,大量冗余代码散布在许多 Activity 中。

有什么想法吗?

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