Android 是否有方法可以从firestore获取所有文档,然后使用其中的数据?

Android 是否有方法可以从firestore获取所有文档,然后使用其中的数据?,android,ios,flutter,dart,native,Android,Ios,Flutter,Dart,Native,这是我为每个用户提供的UID: 但我想收到所有文件,以显示在一张卡片上。当他们点击一个按钮时,卡片消失了,新的卡片上显示了新的数据,这些数据来自随机用户 这是一个用UID将数据保存给当前用户的类 class DatabaseService { final String uid; DatabaseService({ this.uid }); final CollectionReference users = Firestore.instance .collection(

这是我为每个用户提供的UID: 但我想收到所有文件,以显示在一张卡片上。当他们点击一个按钮时,卡片消失了,新的卡片上显示了新的数据,这些数据来自随机用户

这是一个用UID将数据保存给当前用户的类

    class DatabaseService {

  final String uid;
  DatabaseService({ this.uid });

  final CollectionReference users = Firestore.instance
  .collection("users");

  Future updateUserData(String instagram, String age, String genders) async {
    return await users.document(uid).setData({
      "instagram": instagram,
      "age": age,
      "gender": genders,
    });
  }

  Future updateGender(String genders) async {
    return await users.document(uid).updateData({
      "gender": genders,
    });
  }

    Future updateProfile(String age, String name, String description, String picture) async {
    return await users.document(uid).updateData({
      "age": age,
      "name": name,
      "description": description,
      "picture": picture,
    });
  }

    Future updateAccount(bool account) async {
    return await users.document(uid).updateData({
      "private": account,
    });
  }

  // THIS CAUSES PROBALY THE SPIKES IN READS. CHANGE THIS A BIT

  UserData _userDataFromSnapshot(DocumentSnapshot snapshot) {
    return UserData(
      uid: uid,
      account: snapshot.data["private"],
      instagram: snapshot.data["instagram"],
      gender: snapshot.data["gender"],
      age: snapshot.data["age"],
      description: snapshot.data["description"],
      name: snapshot.data["name"],
      picture: snapshot.data["picture"],
    );
  }


  //get user doc stream
  Stream<UserData> get userData {
    return users.document(uid).snapshots()
      .map(_userDataFromSnapshot);
  }
}
类数据库服务{
最后一个字符串uid;
数据库服务({this.uid});
最终收集参考用户=Firestore.instance
.收集(“用户”);
Future updateUserData(字符串instagram、字符串年龄、字符串性别)异步{
return wait users.document(uid).setData({
“instagram”:instagram,
“年龄”:年龄,
“性别”:性别,
});
}
Future updateGender(字符串性别)异步{
return wait users.document(uid).updateData({
“性别”:性别,
});
}
Future updateProfile(字符串年龄、字符串名称、字符串描述、字符串图片)异步{
return wait users.document(uid).updateData({
“年龄”:年龄,
“姓名”:姓名,
“描述”:描述,
“图片”:图片,
});
}
Future updateAccount(bool帐户)异步{
return wait users.document(uid).updateData({
“私人”账户,
});
}
//这可能会导致读取中出现峰值。请稍微更改此设置
UserData\u userDataFromSnapshot(DocumentSnapshot快照){
返回用户数据(
uid:uid,
帐户:snapshot.data[“private”],
instagram:snapshot.data[“instagram”],
性别:快照。数据[“性别”],
年龄:快照。数据[“年龄”],
description:snapshot.data[“description”],
名称:snapshot.data[“name”],
图片:快照。数据[“图片”],
);
}
//获取用户文档流
流获取用户数据{
返回users.document(uid).snapshots()
.map(_userDataFromSnapshot);
}
}

能否添加一些有关firestore数据结构的信息?这将有助于更好地诊断您的问题。@AshutoshSingh我已经用我现在用于保存和检索数据的工具对其进行了更新。使用其中的数据是什么意思?@Ggriffo我为每个用户都提供了一个带有uniqe UID的文档,该文档中有带名称、性别、,年龄等。我想获得一个随机用户,然后显示该随机用户的姓名、性别、年龄。您想以随机顺序显示所有用户,并让他们在单击时更改,还是希望显示一张卡并让该用户随机更改?