java - 如何在 Android 中将 Firebase 子节点从一个节点移动到另一个节点?

标签 java android firebase firebase-realtime-database

我正在做一个项目,用户请求我们的代客泊车服务,而在另一端代客泊车接受请求。

我正在使用 Firebase 作为后端,并根据请求将客户 uid 保存在“请求”子项上。

当代客接受请求时,客户 uid 应从“请求”节点移动到“进行中”节点。

我该怎么做?

最佳答案

我推荐使用这个:

public void moveFirebaseRecord(Firebase fromPath, final Firebase toPath)
{
    fromPath.addListenerForSingleValueEvent(new ValueEventListener()
    {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot)
        {
            toPath.setValue(dataSnapshot.getValue(), new Firebase.CompletionListener()
            {
                @Override
                public void onComplete(FirebaseError firebaseError, Firebase firebase)
                {
                    if (firebaseError != null)
                    {
                        System.out.println("Copy failed");
                    }
                    else
                    {
                        System.out.println("Success");
                    }
                }
            });
        }

        @Override
        public void onCancelled(FirebaseError firebaseError)
        {
            System.out.println("Copy failed");
        }
    });
}

这来自这个来源:https://gist.github.com/katowulf/6099042 .我在我的 JavaEE 代码和我的 Android 应用程序中多次使用它。

您传递您的 fromPath 和 toPath。这是复制,而不是移动,所以原件也将保留在原来的位置。如果你想删除,你可以在 System.out.println("Success"); 之后的 fromPath 上做一个设置值。 .

关于java - 如何在 Android 中将 Firebase 子节点从一个节点移动到另一个节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40456443/

相关文章:

java - 独特的java对象-运行和调试时的不同行为

在某些 6.0 设备上解码 png 图像时,Android native 崩溃

android - 如何从旋转矢量 (Sensor.TYPE_ROTATION_VECTOR) 获取欧拉角

swift - Firebase 不存储登录用户

swift - 如何使用 swift 4 将 int 变量插入到 firebase

java - 克隆与在 Java 中复制数组?

java - 如何从 Azure 使用 API 获取订阅的区域信息?

java - 如何通过自动化 headless 浏览器中的窗口弹出窗口将文件上传到网络浏览器(selenium webdriver)

android - 将具有多个子节点的 Firebase 节点复制到另一个节点

android - 如何将新的 firebase 项目连接到现有的 Google Analytics(而不是创建新的 GA 属性)