gpt4 book ai didi

Android Firebase Auth - 获取用户照片

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:17:38 24 4
gpt4 key购买 nike

我如何才能检索到可以从移动应用程序使用的具有良好分辨率的用户照片?我查看了指南和 api 文档,推荐的方法似乎是使用 FirebaseUser#getPhotoUrl() .然而,这会返回一个分辨率为 50x50 像素的照片的 url,该分辨率太低而无用。有没有办法让客户请求用户的高分辨率照片?我已经分别测试了 Facebook 登录和 Google 登录的 sdk,在这两种情况下,照片的分辨率都高于 Firebase Auth 返回的分辨率。为什么 Firebase Auth 会更改原始分辨率,我如何强制它不这样做?谢谢。

最佳答案

您可以获得分辨率更高的个人资料图片,直接编辑两个提供商(Google 和 Facebook)的 URL:

这是一个 javascript 示例代码,但您应该能够轻松地将其转换为 Java:

getHigherResProviderPhotoUrl = ({ photoURL, providerId }: any): ?string => {
//workaround to get higer res profile picture
let result = photoURL;
if (providerId.includes('google')) {
result = photoURL.replace('s96-c', 's400-c');
} else if (providerId.includes('facebook')) {
result = `${photoURL}?type=large`;
}
return result;
};

基本上,根据提供商的不同,您只需要:

  • 对于 google,将个人资料图片 url 中的 s96-c 替换为 s400-c
  • 对于 facebook,只需在 url 末尾附加 ?type=large

例如谷歌:

low-res pic成为 high-res pic

对于 facebook:

low-res pic成为 high-res pic

关于Android Firebase Auth - 获取用户照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37384026/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com