Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何更新Firebase数据库_Java_Android_Firebase Realtime Database - Fatal编程技术网

Java 如何更新Firebase数据库

Java 如何更新Firebase数据库,java,android,firebase-realtime-database,Java,Android,Firebase Realtime Database,在我的Firebase聊天应用程序中,我在用户使用谷歌、电子邮件和密码或facebook登录后,使用setValue在用户注册时插入用户名和个人资料照片的数据。然后在我的个人资料活动中,我使用valueEventListener显示用户照片和用户名,如果我在我的个人资料活动中再次使用setValue方法,我可以更新。但问题是,它只更新当前数据,所有用户发布内容或评论的地方,用户名和个人资料照片保持不变。当用户在配置文件活动中更新其信息时,是否有方法更新我数据库中的所有内容 下面是我如何插入数据的

在我的Firebase聊天应用程序中,我在用户使用谷歌、电子邮件和密码或facebook登录后,使用setValue在用户注册时插入用户名和个人资料照片的数据。然后在我的个人资料活动中,我使用valueEventListener显示用户照片和用户名,如果我在我的个人资料活动中再次使用setValue方法,我可以更新。但问题是,它只更新当前数据,所有用户发布内容或评论的地方,用户名和个人资料照片保持不变。当用户在配置文件活动中更新其信息时,是否有方法更新我数据库中的所有内容

下面是我如何插入数据的


如何在保存此数据的所有位置进行更新?

问题尚不清楚。请再详细解释一下。发布您的数据库结构

要在任何地方获得相同的数据,只需创建一个子对象,例如

user
 -userid
   -name:username
   -photo:url
   -timestamp:12:30
使用用户名、照片、时间戳等,然后在需要用户详细信息的任何位置获取这些详细信息。同时在您的配置文件活动中更新此子项。
因此,基本上你所做的就是从同一个孩子那里获取和更新所有的值。

谢谢,当我读到你的答案时,我发现它打开了我的思路,是的,我的错误是只在一个地方调用它。我只是在所有存在和设置新值的地方再次调用我的数据。
mDatabaseUser.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String timestampjoined = (String) dataSnapshot.child("timestampjoined").getValue();
        String profilename = (String) dataSnapshot.child("name").getValue();
        String profilepicture = (String) dataSnapshot.child("image").getValue();


        Glide.with(DDiaryProfileActivity.this).load(profilepicture)
                .fitCenter().diskCacheStrategy(DiskCacheStrategy.ALL).into(mProfilePicture);

        ((CollapsingToolbarLayout) findViewById(R.id.toolbar_profile)).setCollapsedTitleTextAppearance(R.style.CollapsingToolBar);;
        ((CollapsingToolbarLayout) findViewById(R.id.toolbar_profile)).setTitle(profilename);


        mTimeJoined.setText("Date joined : " + timestampjoined);
        mProfileName.setText(profilename);
user
 -userid
   -name:username
   -photo:url
   -timestamp:12:30