当前位置: 首页 > 知识库问答 >
问题:

将数据从Firebase提取到Android应用程序

徐昆
2023-03-14

上面是我的firebase数据库,我正在尝试从中提取。正如你所看到的,我有一张叫做“Make”的“表”。我已经成功地将这些数据拉入我的应用程序中的列表视图。代码如下所示。

我现在需要从“VW_Data”表中提取所有数据。该表有1000多个名为“0”到“1000”的孩子,每个孩子的标题相同,例如“轴承”、“海拔”等,但值不同。我希望能够仅从“VW_Data”的所有1000个孩子中提取“轴承”值并显示在列表中。

然而,我只尝试了多种方法来拉“VW\U数据/0/轴承”,但这些方法都不起作用。

以下是我为该类更新的代码:

public class Graphview extends Activity
{
//Holds the values gathered from firebase
final ArrayList<String> graphlist = new ArrayList<>();
ArrayAdapter<String> arrayAdapter;

protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    //Sets the layout according to the XML file
    setContentView(R.layout.activity_graphview);

    //XML variable
    final ListView listViewG = findViewById(R.id.listviewG);


    DatabaseReference database = FirebaseDatabase.getInstance().getReference().child("VW_Data");
    database.addListenerForSingleValueEvent(new ValueEventListener()
    {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot)
        {
            for (DataSnapshot datas : dataSnapshot.getChildren())
            {
                String bearing = (String) datas.child("Bearing").getValue();
                //Add the info retrieved from datasnapshot into the ArrayList
                graphlist.add(bearing);
                arrayAdapter = new ArrayAdapter<>(Graphview.this, R.layout.itemview, graphlist);
                listViewG.setAdapter(arrayAdapter);
                //Will refresh app when the data changes in the database
            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });

}//End onCreate()

共有2个答案

澹台景辉
2023-03-14

尝试以下操作:

DatabaseReference db = FirebaseDatabase.getInstance()
                                       .getReference()
                                       .child("VW_Data");
db.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
            for (DataSnapshot datas : dataSnapshot.getChildren()) {
                String bearing = datas.child("Bearing").getValue().toString();
            }
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {

    }
});

快照位于VW_Data然后使用for循环,您将能够在“0”内迭代并检索值轴承

庄新翰
2023-03-14

尝试以下操作:

    DatabaseReference database = FirebaseDatabase.getInstance().getReference().child("VW_Data");
    ref.addListenerForSingleValueEvent(new ValueEventListener() {
      @Override
      public void onDataChange(DataSnapshot dataSnapshot) {
         Iterable<DataSnapshot> verticalSnapshotItr = dataSnapshot.getChildren();

                      if (verticalSnapshotItr != null) {
                        for (DataSnapshot verticalItemSnapshot : verticalSnapshotItr) {
                     String altitude = (String) verticalItemSnapshot.child("Altitude").getValue();
             // Parse rest keys here
                }

      }

      @Override
      public void onCancelled(DatabaseError databaseError) {

      }
    });

}
 类似资料:
  • 问题内容: 我是天蓝色的新手,我不知道如何连接到在Azure数据库上创建的表。我想获取表数据(SELECT *)并将其填充到android的GridView中。我知道使用适配器的“填充”部分,我只想知道如何连接和接收表中的数据:) 我已经尝试过Microsoft的本教程,但是在将同一教程应用于我的方案时遇到了一些困难。 这是我尝试过的: 在这种情况下如何指定SQL SELECT查询?看起来这段代码

  • 一切正常,但DatabaseReference无法获取数据,这就像是忽略了我的代码运行,就像我的internet无法运行一样,请帮助我,我是这个社区的新手,下面是我的代码和图片。 以前它是工作的,但由于我只是更改了一些代码,使只有currentVersion>=vCode,这样即使数据库中的值是 firebase数据库映像 mainactivity.java manifest.xml 依赖关系

  • 我一直试图从firebase实时数据库中获取一些上传的数据,但应用程序一直崩溃。 我将从“profile_tab”转到“project_creation_activity”,以便将数据上载到Firebase,处理数据上载的代码如下所示 行Profile_Tab行511是:

  • 也就是说,我想创建应用程序,然后让这些应用程序访问一个项目的特定Firebase数据库。 查看Firebase Android文档,我找不到一种方法来使用下面的方法将数据发送到另一个项目中的另一个Firebase数据库,但其中的引用是另一个项目的。

  • 我正在做一个应用程序,我必须从firebase获取一些数据,并在RecyclerView中显示。但textView字段仍然为空,并且不显示任何数据。下面是db结构。我想获取“AlphabetMatching”下的节点的数据,但未能获取。回收器显示了我为行所做的布局,但没有数据库中的数据。 activity班: VIEWHOLDER类: } AMAW类 }

  • 我正在创建一个基于网络的android应用程序。所以 1)我已经在eclipse IDE中安装了Google App Engine插件,并开始开发基于网络的android应用程序,其中客户的所有信息都存储在GAE Datastore中。 2)我已经创建了一个新的Web应用程序,并在数据存储中存储了实体。我可以检索这些值并显示在我的android应用程序中,并将新的细节从我的应用程序添加到GAE数据