试图从firestore获取String

时间:2018-05-29 10:14:49

标签: java android firebase google-cloud-firestore

我正在开发一个受限制的注册页面,我需要从数据库中获取代码,但字符串又回来了,我不知道为什么。有人可以帮忙吗?

以下是阅读代码的功能:

public void codeClinic() {

    DocumentReference docRef = FirebaseFirestore.getInstance().collection("CodeClinic").document("Codes");
    docRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
        @Override
        public void onComplete(@NonNull Task<DocumentSnapshot> task) {
            if (task.isSuccessful()) {
                DocumentSnapshot document = task.getResult();
                codedb = document.getString(clinic.getText().toString());
                Log.d("Code",codedb);
            }
        }
    });
}

AndI只是在onClick函数的TextView上调用它来查看它返回的内容并且它返回空白。

这是数据库

database

由于

1 个答案:

答案 0 :(得分:2)

要使其正常运行,请使用以下代码:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
rootRef.collection("CodeClinic").document("Codes").get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {
            DocumentSnapshot document = task.getResult();
            if (document.exists()) {
                String clinica = document.getString("Clinica");
                Long feup = document.getLong("FEUP");
                String outra = document.getString("outra");
                Log.d("TAG", clinica + " / " + feup + " / " + outra);
            }
        }
    }
});

您的输出将是:1111 / 1234 / 2222