gpt4 book ai didi

android - 从 Google Cloud Firestore 获取 JSON 对象

转载 作者:行者123 更新时间:2023-11-29 16:41:15 30 4
gpt4 key购买 nike

This是我发现的最接近的问题,但仍然不是我正在寻找的问题。

我正在使用谷歌 Firestore保存用户信息(号码、性别等)。我使用 JSON 自定义对象来保存,但是当我尝试获取信息时,我无法再次转换为 JSON 对象。

private void getUserData() {
ffDatabase.collection(Objects.requireNonNull(mAuth.getCurrentUser()).getUid()).get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
JSONObject user = new JSONObject(task.getResult()
.toObjects(JSONObject.class).get(0));
DataStorageTemporary.getInstance().setJsonUser(user);
} else {
Log.w("ERROR load data", "Error getting documents.", task.getException());
}
}
});
}

我尝试从 Task(result) 获取 JSON 对象,但它不起作用:

  • task.getResult().toObjects(JSONObject.class).get(0)

我知道我可以将QuerySnapshot更改为DocumentSnapshot,但我仍然无法从中获取JSON对象。

最佳答案

您需要创建一个自定义用户类,然后使用该 POJO 写入 firestore,如 @Doug Stevenson 所说。请参阅 docs 中的以下内容:

“自定义对象 使用 Java Map 对象来表示文档通常不是很方便,因此 Cloud Firestore 还支持使用自定义类编写您自己的 Java 对象。Cloud Firestore 会在内部将对象转换为支持的数据类型。”

关于android - 从 Google Cloud Firestore 获取 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50633157/

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