java - 从 Firebase 实时数据库中检索单个数据
问题描述
我是 firebase 新手,我想存储一个高分并从 Firebase 实时数据库中检索它。存储按预期工作,但我找不到检索存储数据的教程。官方文档对我来说有点混乱。请帮帮我。
public class result extends AppCompatActivity {
TextView fscore,highs; Button pagain; String scor; int hs,scrcheck;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
fscore=(TextView)findViewById(R.id.finalscore);
highs=(TextView)findViewById(R.id.his);
pagain=(Button)findViewById(R.id.pagain);
scor=getIntent().getStringExtra("score");
fscore.setText(scor);
// need code here to retrieve the existing highscore value from firebase and assign it to highs textview.
//code to update highscore
scrcheck=Integer.parseInt(scor);
if(scrcheck>hs)
{
hs=scrcheck;
FirebaseDatabase.getInstance().getReference().child("highscore").setValue(hs);
}
highs.setText(Integer.toString(hs));
}
提前致谢。
解决方案
基于关于获取值的文档:
DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
ref.child("highscore").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
System.out.println("highscore: " + dataSnapshot.getValue(Long.class));
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
}
推荐阅读
- python - 将具有类似字典表示的字符串转换为 Python 中的字典
- c - SerialBT.readString() 保存为字符串
- core-data - 使用 .localizedCaseInsensitiveCompare 过滤属性列表
- php - 在我的数据库中,希腊字母之后的所有内容都是空的
- angular - ngIf 条件已切换但显示未显示
- c - 这些表达式做了什么 ii = (char *)&i ; aa= (char *)&a ; 在下面的程序中?
- sql-server - SQL Pivot 创建 NULL 而不是在 DateTime 值上合并
- jsf - 获取数据表列表
- reactjs - React Router - 使用组件参数并将道具传递给渲染的组件?
- php - 如何在特定页面上显示 wordpress 用户地址?