如何生成firebase uid

Vin*_*ria 1 android firebase firebase-realtime-database

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

Shu*_*ank 8

您可以使用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) {

        }
    }
});
Run Code Online (Sandbox Code Playgroud)

这在" 更新特定字段"部分的文档中进行了说明

此示例使用push()在包含/ posts/$ postid中所有用户的帖子的节点中创建帖子,同时使用getKey()检索密钥.然后可以使用密钥在/ user-posts/$ userid/$ postid的用户帖子中创建第二个条目.