【问题标题】:How to generate firebase uid如何生成firebase uid
【发布时间】:2016-10-13 19:31:29
【问题描述】:

我正在尝试将数据(不是用户)存储在 Firebase 后端。如何生成 Firebase 唯一标识符并将其存储在孩子中?我一直使用firebase(DatabaseReference Key)作为记录螺母的唯一标识符,该键为空。

【问题讨论】:

    标签: android firebase firebase-realtime-database


    【解决方案1】:

    您可以使用push().getKey()获取唯一密钥

    FirebaseDatabase database = FirebaseDatabase.getInstance();
    String key = database.getReference("todoList").push().getKey();
    
    Map<String, Object> childUpdates = new HashMap<>();
    childUpdates.put( key, todo.toFirebaseObject());
    database.getReference("todoList").updateChildren(childUpdates, new DatabaseReference.CompletionListener() {
        @Override
        public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
            if (databaseError == null) {
    
            }
        }
    });
    

    这在 更新特定字段 部分下的docs 中有说明

    本示例使用 push() 在包含帖子的节点中创建帖子 对于 /posts/$postid 上的所有用户并同时检索密钥 使用 getKey()。然后可以使用该密钥在 用户在 /user-posts/$userid/$postid 的帖子。

    【讨论】:

      【解决方案2】:
      FirebaseDatabase database = FirebaseDatabase.getInstance();
      String key = database.getReference("todoList").push().getKey();
      
      Map<String, Object> childUpdates = new HashMap<>();
      childUpdates.put( key, todo.toFirebaseObject());
      database.getReference("todoList").updateChildren(childUpdates, new DatabaseReference.CompletionListener() {
          @Override
          public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
              if (databaseError == null) {
      
              }
          }
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-02-28
        • 1970-01-01
        • 2012-05-04
        • 1970-01-01
        • 2017-06-15
        • 2014-08-25
        • 1970-01-01
        相关资源
        最近更新 更多