【问题标题】:save unique key firebase to child将唯一的密钥火力库保存给孩子
【发布时间】:2020-07-24 06:43:29
【问题描述】:

我有一个这样的数据库

"Chats" : {
"-MCzU6r-JqvAkC9unjru" : {
  "isSeen" : false,
  "message" : "H",
  "receiver" : "wwRWdMQ62bNwO09M5LpxXks37442",
  "sender" : "R5ICmEp5B6Sbhow523BmQoF6uUG2",
  "timestamp" : "1595571732585",
  "type" : "text"
}}

我想在我的孩子中保存一个唯一的密钥“-MCzU6r-JqvAkC9unjru”,就像这样

"Chats" : {
"-MCzU6r-JqvAkC9unjru" : {
  "isSeen" : false,
  "message" : "H",
  "receiver" : "wwRWdMQ62bNwO09M5LpxXks37442",
  "sender" : "R5ICmEp5B6Sbhow523BmQoF6uUG2",
  "timestamp" : "1595571732585",
  "type" : "text",
  "key" : "-MCzU6r-JqvAkC9unjru"
}}

我可以这样做吗?如果可以如何在我的代码中实现它?

这里是添加数据到 firebase 的代码

private void sendMessage(final String message) {
    DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference();

    String timestamp = String.valueOf(System.currentTimeMillis());

    HashMap<String, Object> hashMap = new HashMap<>();
    hashMap.put("sender", myUid); 
    hashMap.put("receiver", hisUid);
    hashMap.put("message", message);
    hashMap.put("timestamp", timestamp);
    hashMap.put("isSeen", false);
    hashMap.put("type", "text");
    databaseReference.child("Chats").push().setValue(hashMap);

【问题讨论】:

    标签: java android firebase firebase-realtime-database unique-key


    【解决方案1】:

    您可以执行以下操作:

        String key = databaseReference.child("Chats").push().getKey();
    
        HashMap<String, Object> hashMap = new HashMap<>();
        hashMap.put("sender", myUid); 
        hashMap.put("receiver", hisUid);
        hashMap.put("message", message);
        hashMap.put("timestamp", timestamp);
        hashMap.put("isSeen", false);
        hashMap.put("type", "text");
        hashMap.put("key",key);
        databaseReference.child("Chats").child(key).setValue(hashMap);
    

    使用getKey(),您可以检索使用push() 创建的随机ID,然后将其添加到hashMap

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-15
      • 2018-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多