android - 从 Firestore 文档中检索数字时出错
问题描述
我在文档的字段中存储了一个数字并想检索它,但出现以下错误:
String resource ID #0x1
我正在使用这种方法来检索号码。存储在 Firestore 中的数字是 Long、Integer 还是 Double?我没有找到任何答案,我该如何解决这个错误,以便我可以检索该号码并在我的代码中使用它?
错误显示在该Toast
行中。
非常感激您的帮忙!
这是我的代码:
Integer round;
private FirebaseFirestore db = FirebaseFirestore.getInstance();
private CollectionReference roundRef = db.collection("Games");
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_play_interim_result);
...
roundRef.document(gameId).collection("Round").document("Round").get()
.addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()){
DocumentSnapshot document = task.getResult();
if (document != null){
round = document.getLong("round").intValue();
Toast.makeText(PlayInterimResultMainActivity.this, round, Toast.LENGTH_SHORT).show();
}
}
}
});
...
解决方案
我发现了问题:
错误出现在 Toast 消息中,我没有将整数转换为字符串值。这是正确的 Toast 消息:
Toast.makeText(PlayInterimResultMainActivity.this, round.toString(), Toast.LENGTH_SHORT).show();