假设有两个节点:
用户数据(在“用户数据”中:)
唯一ID 名称:“ abc” 纬度:“ 123” 经度:“ 456”
用户密钥(在“用户密钥”内部:)
唯一ID g:“ awe46q” 升 0:123 1:456
在这里,我要使用相同的唯一ID保存“用户数据”和“用户密钥”。但是我不知道该怎么做。
答案 0 :(得分:0)
我尝试过push()方法,但它会生成不同的唯一ID。
这是预期的行为,因为多次调用push()
,每次都会产生一个新的随机ID。
我必须使用FirebaseAuth来使“用户数据”和“用户密钥”的唯一ID相似。
对于用户ID,是的,最合适的解决方案是实施Firebase Authentication并使用在此过程中生成的UID
。最后,您可以在所需的每个引用中简单地使用相同的UID
,例如:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference userDataRef = rootRef.child("userData").child(uid); //One reference
userDataRef.setvalue(yourObject);
DatabaseReference otherUserDataRef = rootRef.child("otherUserData").child(uid); //Second reference
otherUserDataRef.setvalue(otherObject);