Como ler dados do Firebase ONCE usando java / android?
Estou tentando usar a API Java para ler dados de um banco de dados do Firebase em um aplicativo Android no evento onCreate (). Em outras palavras, estou tentando fazer a leitura mais simples possível, o equivalente a ...
ref.once('value', function(snapshot) {
});
... na API Javascript. Eu estou tentando usar o método addEventListenerForSingleValueEvent (), mas parece querer que eu substitua o método onDataChange (), que não é o que eu quero. Eu quero obter os dados para fora quando a execução do programa atinge essa linha, independentemente dos eventos do banco de dados. Aqui está a minha função (inacabada) ....
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.poll_table);
// First get the table layout
tbl = (TableLayout) findViewById(R.id.pollsTable);
// Now let's create the header
TableRow tHead = createPollsTableHeader();
// Add header to tableLayout
tbl.addView(tHead, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));
// Add all polls in ref as rows
polls.addListenerForSingleValueEvent(new ValueEventListener() {
// DON'T KNOW WHAT TO DO HERE
}
}
Eu nem acho que esse é o método correto. Eu só quero ser capaz de obter um Datasnapshot que eu possa percorrer e obter dados, como ...
for (Datasnapshot child : datasnapshot) {
}
..apenas como se eu estivesse usando oref.once('value', function(snapshot)
evento na API Javaxcript.