首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法从firebase检索DisplayName名称和PhotoUrl,始终返回null,颤动

问题描述: 无法从Firebase检索DisplayName名称和PhotoUrl,始终返回null,颤动。

回答: Firebase是一个用于开发移动和Web应用的后端平台,提供了一系列的工具和服务,其中包括身份验证、实时数据库、存储、云函数等。在使用Firebase的身份验证功能时,要从用户的身份验证凭据中检索用户的DisplayName和PhotoUrl信息,但是目前在检索这些信息时始终返回null,导致了问题。

解决该问题的步骤如下:

  1. 确认用户的身份验证凭据是否正确:首先,确认用户已经成功进行了身份验证,并且在进行检索操作之前,可以从身份验证凭据中获取到其他正确的用户信息。这可以通过打印身份验证凭据对象或使用调试工具来验证。
  2. 检查是否已在Firebase身份验证中启用了DisplayName和PhotoUrl选项:确保在Firebase控制台的身份验证设置中启用了相应的选项。在"登录提供商"中找到相应的身份验证方式(如Google、Facebook等),并确保已启用"在用户的帐户中保存以下数据"选项,其中包括DisplayName和PhotoUrl。
  3. 使用正确的方法检索用户信息:在使用Firebase身份验证的API来检索用户信息时,确保使用了正确的方法。例如,在使用Firebase SDK进行身份验证的情况下,可以使用getCurrentUser()方法来获取当前已经身份验证的用户对象,然后使用该对象的getDisplayName()getPhotoUrl()方法来获取相应的信息。
  4. 确认用户已经设置了DisplayName和PhotoUrl:如果以上步骤都没有问题,但仍然返回null,那么可能是因为用户在身份验证凭据中没有设置DisplayName和PhotoUrl。在一些身份验证提供商(如Google)中,用户需要在其个人资料中设置这些信息,才能在Firebase中获取到。

如果以上步骤都没有解决问题,可以考虑查阅Firebase的官方文档或访问Firebase的支持论坛,以获取更多关于该问题的帮助和解决方案。

补充说明: 在腾讯云的云计算平台中,也提供了类似Firebase的云产品和服务,可以用于开发移动和Web应用。腾讯云的身份认证服务是CAM(访问管理)和STS(临时安全令牌),可以用于管理用户身份和权限。在使用腾讯云的身份认证服务时,也需要注意上述步骤,以确保可以正确检索用户的DisplayName和PhotoUrl信息。相关的腾讯云产品和服务可以参考腾讯云官方文档,链接如下:

  • CAM(访问管理):https://cloud.tencent.com/document/product/598
  • STS(临时安全令牌):https://cloud.tencent.com/document/product/598/10334
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Firebase Remote Config

以下规则用于确定在某个特定时间点 Remote Config 服务器提取哪个值 如果哪个条件值为 true,则读取对应的值 如果多个条件均为 true,则读取 Firebase 控制台显示的第一个...如果没有条件满足,则读取 Firebase 控制台设置的默认值 如果没有条件满足,且 Firebase 控制台没有设置默认值,则读不到任何参数 APP 中,参数由 get 方法根据以下优先级列表返回...参数组的名称不得超过 256 个字符 每个参数只能属于一个组,且该参数要保持唯一 如果同时使用了 Firebase 控制台 REST API ,请确保 REST API 逻辑为最新 Snip20230919..._45.png 模板版本管理 检索特定的 Remote Config 模板版本 回滚到指定版本 删除指定版本 Snip20230919_46.png Firebase Remote Config 加载策略...对于 Remote Config,一分钟超时可能太长,无法为用户提供良好的应用启动体验。

53610
  • 我们弃用 Firebase

    的确,纯性能上讲,在 AWS/Azure/ GCP 上构建的定制化原生服务包优于 Firebase 套件。但是,当我们考虑到开发时间维护成本时,Firebase 通常是一个合乎逻辑的选择。...由于是闭源的,你不能默认以为 Firebase 始终存在(像 Parse 一样),依赖于特定的 API 版本也不可靠。 因此,你也不能真正地在本地运行 Firebase。...我还注意到,无法Firebase Storage 仪表板上下载文件了;必须导航到单独的 GCP 平台。 我无法Firebase 仪表板上下载这个文件。...直接 Google Cloud Console 下载。 GCP 似乎正在蚕食 Firebase 开发环境。 运营的角度来看,这是合理的。...我考虑了以下两种变通方法: 使用单个基于事件名称调用条件逻辑(如使用事件分派器)的 Cloud Function。

    32.6K30

    JavaScript中的闭包(closure)

    2 让这些变量始终保持在内存中。...这是一个简单的闭包函数,displayName函数内嵌在init函数里面,name变量是init函数内部的全局变量,因此displayName函数可以访问到那么变量。...返回的函数接受一个参数 y,并返回x+y的值。 本质上讲,makeAdder 是一个函数工厂 — 他创建了将指定的值和它的参数相加求和的函数。...这个环境中包含两个私有项:名为 privateCounter 的变量名为 changeBy 的函数。这两项都无法在这个匿名函数外部直接访问。必须通过匿名函数返回的三个公共函数访问。...但在作用域链中,外部函数的活动对象始终处于第二位,外部函数的外部函数的活动对象处于第三位,……直至作为作用域链终点的全局执行环境。 在函数执行过程中,为读取写入变量的值,就需要在作用域链中查找变量。

    1.1K20

    ASP.NET MVC 2示例Tailspin Travel UI层分析

    功能上来分为向普通用户提供的前台页面管理员使用的后台界面,前台页面主要实现的是旅游活动日程安排,航班,酒店,租车这几部分采用的ASP.NET MVC 2技术,管理员用的后台管理页面使用的是ASP.NET...如果字段不允许为 NULL,则录入时必须录入数据。不过这里还有待改进,不允许为 NULL,也就成了不允许零长度字符串,而实际应用中 NULL 零长度字符串是两回事。...如果字段类型为 nvarchar(10),那么就不允许超过 10 个字符;如果字段类型不是 nvarchar(10),而是 varchar(10),此时六个汉字也会通过验证,只是无法入库罢了,会返回错误...FlightBookings,这个名称一定要与 Tailspin.edmx中的相应表的分部类名称一样。...比如将类名称 List 改为 DynamicDataTest.FlightBookingsList。

    1.6K90

    JUnit5学习之六:参数化测试(Parameterized Tests)基础

    枚举数据源 方法数据源 Csv格式数据源 Csv文件数据源 源码下载 如果您不想编码,可以在GitHub下载所有源码,地址链接信息如下表所示: 名称链接备注项目主页https://github.com...strings = { null, "a", "b", "c" }) 此时可以使用@NullSource注解来取代上面的null元素,下面这种写法上面的效果一模一样: @NullSource...EmptySource代表空字符串入参,用法执行结果如下图所示: 如果想同时用null空字符串做测试方法的入参,可以使用@NullAndEmptySource,用法执行结果如下图所示:...都没有执行: 方法数据源(MethodSource) @MethodSource可以指定一个方法名称,该方法返回的元素集合作为测试方法的入参; 先来定义一个方法,该方法一般是static类型(否则要用...,下面这个设置就是把CSV数据中所有的NIL识别为null,再传给测试方法: @Order(13) @DisplayName("CSV格式多条记录入参(识别null)") @

    88620

    ResultSet相关ResultSetMetaData详细

    ResultSetMetaData 有关 ResultSet 中列的名称类型的信息。...本质上讲,它是对一个一般宽度未知长度的表的一种抽象。几乎所有的方法查询都将数据作为 ResultSet 返回。ResultSet 包含任意数量的命名列,您可以按名称访问这些列。...您可以使用 next() 方法得到其他每一行,当没有更多行时,该方法会返回 false。由于数据库中获取数据可能会导致错误,您必须始终将结果集处理语句包括在一个 try 块中。...您可以使用此对象获得列的数目类型以及每一列的名称。 getColumnCount(); 返回 ResultSet 中的列数。...一般将它设置为 null。 Tablemask 一个掩码,用来描述您要检索的表的名称。如果您希望检索所有表名,则将其设为通配符 %。

    1.5K20

    如何使用Slicer对APK文件执行信息安全侦察任务

    Slicer能够接收一个提取出来的APK文件路径作为输入参数,随后Slicer便会将所有的安全侦察结果返回给研究人员,其中包括目标APK文件中所有导出并设置为null权限(可以外部调用)的Activity...Service信息; 4、支持通过.json检测APK的Firebase URL(如果Firebase URL为myapp.firebaseio.com,那么Slicer则会检测https://myapp.firebaseio.com.../.json是否会返回有价值的信息); 5、支持检测Google API密钥是否可以公开访问; 6、返回strings.xmlAndroidManifext.xml中的其他API密钥; 7、枚举/res.../raw/res/xml目录中的所有文件名称; 8、提取所有的URL地址路径;  工具安装  由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好Python 3环境。...Options: -d, --dir jadx输出目录路径地址 -o, --output 输出文件的文件名 (向右滑动、查看更多)  工具使用  下列命令可以APK

    1.3K20

    五年了,你还在用junit4吗?

    @DisplayName("显示名称测试") class DisplayNameDemo { @Test @DisplayName("我的 第一个 测试 用例") void...并且每个静态内部类都可以有自己的生命周期方法, 这些方法将按外到内层次顺序执行。 此外,嵌套的类也可以用@DisplayName 标记,这样我们就可以使用正确的测试名称。...这带来了更大的灵活性,并为构造函数方法启用依赖注入 TestInfo可获取测试信息 TestReporter可以向控制台输出信息 @Test @DisplayName("test-first") @Tag...image-20210416232512919 动态测试 动态测试只需要编写一处代码,就能一次性对各种类型的输入输出结果进行验证 @TestFactory @DisplayName("动态测试") Stream...(注意方法返回需要是一个流) @ArgumentsSource:指定一个自定义的,可重用的ArgumentsProvider。

    1.6K40

    MySQL中SQL执行计划详解

    Full scan on NULL key当优化程序无法使用索引查找访问方法时,子查询优化将作为回退策略发生。 Impossible HAVING该HAVING子句始终为false,无法选择任何行。...Impossible WHERE 该WHERE子句始终为false,无法选择任何行。...Impossible WHERE noticed after reading const tables MySQL已经读取了所有 const( system)表,并注意到该WHERE子句始终为false...MySQL必须执行额外的传递以找出如何按排序顺序检索行。排序是通过根据连接类型遍历所有行并将排序键指针存储到与该WHERE子句匹配的所有行的行来完成的。...然后对键进行排序,并按排序顺序检索行 Using index 仅使用索引树中的信息表中检索列信息,而不必另外寻找读取实际行。当查询仅使用属于单个索引的列时,可以使用此策略。

    3.1K20

    Junit5 新特性你用过多少?

    可以看到左边一栏的结果里显示测试项名称就是我们在测试类方法上使用 @DisplayName 设置的名称,这个注解就是 JUnit 5 引入,用来定义一个测试类并指定用例在测试报告中的展示名称,这个注解可以使用在类上方法上...并且每个静态内部类都可以有自己的生命周期方法, 这些方法将按外到内层次顺序执行。此外,嵌套的类也可以用@DisplayName 标记,这样我们就可以使用正确的测试名称。...这是基本的用法,我们还可以对重复运行的测试方法名称进行修改,利用 @RepeatedTest 提供的内置变量,以占位符方式在其 name 属性上使用,下面先看下使用方式效果: @DisplayName...但是如果我们把休眠时间设置一秒钟,测试仍然会出现偶尔失败的情况,这是因为测试方法执行过程中除了目标代码还有额外的代码指令执行会耗时,所以在超时限制上无法做到对时间参数的完全精确匹配。...结语 到这里,想必你对 JUnit 5 也有了基本的了解掌握,都说单元测试是提升软件质量,提升研发效率的必备环节,会用 JUnit 5 写单元测试开始,培养写测试代码的习惯,在不断实践中提升自身的开发效率

    2.8K20
    领券