2017-01-05 101 views
1

这是我的数据库火力如何在没有DataSnapshot的情况下从Firebase数据库检索数据? #AskFirebase

enter image description here

我想获得页面的值当我试图这样等于200

DatabaseReference my= userid_database.child("Books").child("Book 1").child("Page"); 

    System.out.println(my); 

输出:

https://my-proje-book-timer.firebaseio.com/qpPLvgpM0TMF6vz4Kqw8QaYroG83/Books/Book%201/Page 

当我试图这样的:

DatabaseReference my= userid_database.child("Books").child("Book 1").child("Page").getKey(); 

    System.out.println(my); 

输出:

Page 

我不想用这样的:因为我想获得每本书页的所有值

my.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      String text = dataSnapshot.getValue(String.class); 


     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 

并用这些值进行计算。这样,我无法获得方法外的值。

+2

这样的火力点相互作用(以及许多其他类型的开发Android应用时,你会遇到的相互作用)的本质是结果异步返回.....所以你需要使用'addValueEventListener'(或类似) –

+0

制作的url +“以.json” REST调用将检索数据 – Th0rndike

+0

[题外话]我是因为我看到了火力地堡视频这个问题Frank范Puffeler我在这里:d还有谁是我? –

回答

2

如果你不想使用监听器,你可以用the REST API容易使一个HTTP查询来查找你想要的数据,假设它是没有认证的可读性。如果你需要认证,它会变得更加困难。

,但其实你最好现在只是学习,使听众对你的工作,即使你不习惯那种处理。

相关问题