java - Firebase 无法将 Gmail 帐户用作子帐户

标签 java android firebase-realtime-database

child("Members").child("billgate@gmail.com").setValue(people);

这是我的代码,当我在我的设备上运行它时崩溃,我试图在我的 Android Studio 项目中作为子项插入 Gmail 帐户,但由于某种原因它不断崩溃,但当我将其更改为一个简单的名称时它有效:

child("Members").child("billgate").setValue(people);

但是如果我这样写而不包含 @gmail.com 部分,它就可以完美工作。但是我需要为我的 child 设置一个 Gmail 帐户。

最佳答案

因为 Firebase 不允许符号为 .在 key 中,我建议您对电子邮件地址进行如下编码:

name@email.com -> name@email,com

正如您可能看到的,而不是 .我用过 ,。为此,您可以使用以下方法:

static String encodeUserEmail(String userEmail) {
    return userEmail.replace(".", ",");
}

static String decodeUserEmail(String userEmail) {
    return userEmail.replace(",", ".");
}

关于java - Firebase 无法将 Gmail 帐户用作子帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58207606/

相关文章:

java - C 或 Java 的非玩具软件事务内存

Android OpenGL 传递 OnTouch 事件值

java - 使用 Retrofit 和 dagger 2 动态更改基本 Url

java - Base64.encodeToString() 在 Android 中不起作用

javascript - Firebase - 如何从节点中删除单个数据而不删除整个节点

java - 如何在 spring mvc 应用程序中打开弹出窗口

Java等待线程在通知后不会恢复

java - 如何使用 Spring-MVC 创建 "Update"/"Edit"的 SQL 语法?

java - 如何禁用向自身发送好友请求的按钮?

javascript - 使用 firebase 数据填充下拉字段