Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 保存并读取整数Firestore Android_Java_Android_Database_Firebase_Google Cloud Firestore - Fatal编程技术网

Java 保存并读取整数Firestore Android

Java 保存并读取整数Firestore Android,java,android,database,firebase,google-cloud-firestore,Java,Android,Database,Firebase,Google Cloud Firestore,我正在尝试为我的Android游戏创建一个简单的统计活动。我正在使用新的Firestore数据库。我已经能够使用总分、最近分数、平均分数、总游戏数和高分将文档保存到我的Firestore数据库中,但是当我尝试从数据库中读取数据时,它返回空值 public void readFromDB(){ statsDoc.get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() { @Over

我正在尝试为我的Android游戏创建一个简单的统计活动。我正在使用新的Firestore数据库。我已经能够使用总分、最近分数、平均分数、总游戏数和高分将文档保存到我的Firestore数据库中,但是当我尝试从数据库中读取数据时,它返回空值

public void readFromDB(){
    statsDoc.get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
        @Override
        public void onSuccess(DocumentSnapshot documentSnapshot) {
            if(documentSnapshot.exists()){
                UserData userdata = documentSnapshot.toObject(UserData.class);
            }
        }

当我用字符串测试它时,它工作得很好,但由于某些原因整数不起作用。提前谢谢

在做了一些测试之后,我得出结论,我们必须将long转换为整数,因为这是从firestore获取“数字”得到的结果。 我的数据是这样的:


单击字段末尾的“编辑”图标,确保存储了一个“数字”:


使用此选项进行铸造:

我的代码如下所示:

int money = snapshot.getLong("money").intValue();


请随时要求进一步解释

在此处输入代码
float TotalAmount=float.parseFloat (String.valueOf(ObjectsrequireNonNull(getSnapshots().getSnapshot(position).getLong(“TotalAmount”)))


试试看。。。。。。。。101%%%

在我看来不错。对于未提供字段的情况,我建议首先执行NOTNULL检查。
int money = snapshot.getLong("money").intValue();