有什么方法可以将实际的DatabaseReference对象保存到FirebaseDatabase?

时间:2018-07-25 08:07:42

标签: java android

我试图通过将一个节点的引用保存到一个节点中作为值来连接2个节点,但是当我尝试这样做时,我遇到了运行时错误:

Caused by: com.google.firebase.database.DatabaseException: Found a conflicting setters with name: setWallpaper (conflicts with setWallpaper defined on android.content.ContextWrapper)**

我尝试运行的代码如下:

DatabaseReference svDbRef = FirebaseDatabase.getInstance().getReference().child("POIs")
                .child("Pub")
                .child("-LIBpQkXx73n3Yt4z0Xn");

DatabaseReference dbref = FirebaseDatabase.getInstance().getReference().child("References");
dbref.push().setValue(svDbRef, new DatabaseReference.CompletionListener() {
    @Override
    public void onComplete(@Nullable DatabaseError databaseError, @NonNull DatabaseReference databaseReference) {
        Toast.makeText(AddLocation.this, "Saved successfully", Toast.LENGTH_SHORT).show();
    }
});

2 个答案:

答案 0 :(得分:0)

以这种方式尝试-

DatabaseReference dbref;
DatabaseReference svDbRef = FirebaseDatabase.getInstance().getReference().child("POIs").child("Pub").child("-LIBpQkXx73n3Yt4z0Xn").addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {

        dbref = FirebaseDatabase.getInstance().getReference().child("References");
        dbref.push().setValue(snapshot, new DatabaseReference.CompletionListener() {
            @Override
            public void onComplete(@Nullable DatabaseError databaseError, @NonNull DatabaseReference databaseReference) {
                Toast.makeText(AddLocation.this, "Saved successfully", Toast.LENGTH_SHORT).show();
            }
        });

    }
    @Override
    public void onCancelled(DatabaseError databaseError) {  

    }
});

答案 1 :(得分:-1)

我认为您的问题在这里:Found a conflicting setters with name: setWallpaper (conflicts with setWallpaper defined on android.content.ContextWrapper)** 什么是setWallpaper()函数?它是你的吗?尝试重命名