- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 Android 上使用 Firebase Auth。
我的登录流程工作正常,但我无法立即更新 username 和 profileUrl。
public void test() {
String username = "test username";
Uri avatarUri = Uri.parse("http://www.pixelstalk.net/wp-content/uploads/2016/08/Wonderful-Random-Background.jpg");
UserProfileChangeRequest.Builder builder = new UserProfileChangeRequest.Builder();
builder.setDisplayName(username);
builder.setPhotoUri(avatarUri);
Log.d("UPDATE PROFILE", "user exists=" + (firebaseAuth.getCurrentUser() != null ? "YES" : "NO"));
Log.d("UPDATE PROFILE", "user anonymous=" + (firebaseAuth.getCurrentUser().isAnonymous() ? "YES" : "NO"));
firebaseAuth.getCurrentUser().updateProfile(builder.build()).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
if (firebaseAuth.getCurrentUser().getDisplayName() != null) {
Log.d("UPDATE PROFILE", "username=" + firebaseAuth.getCurrentUser().getDisplayName());
} else {
Log.d("UPDATE PROFILE", "username=NULL");
}
if (firebaseAuth.getCurrentUser().getPhotoUrl() != null) {
Log.d("UPDATE PROFILE", "photoUrl=" + firebaseAuth.getCurrentUser().getPhotoUrl().toString());
} else {
Log.d("UPDATE PROFILE", "photoUrl=NULL");
}
} else {
Log.e("UPDATE PROFILE", task.getException().getMessage());
}
}
});
}
我尝试了上面的测试方法,这是我的输出
UPDATE PROFILE: user exists=YES
UPDATE PROFILE: user anonymous=NO
UPDATE PROFILE: username=NULL
UPDATE PROFILE: photoUrl=NULL
我不明白为什么即使有“isSuccessful()”结果我的 currentUser 也没有更新
最佳答案
这是最新版 Firebase (9.8.0) 中的一个已知问题。根据 here,这是一个已知问题.目前唯一的临时修复是将所有内容回滚到 9.6.1 版。
将应用程序的 gradle 依赖关系更改为 Firebase 组件(这只是一个临时修复,如果在新版本中使用某些东西,它可能会破坏其他东西):
compile 'com.google.android.gms:play-services-auth:9.6.1'
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.firebase:firebase-messaging:9.6.1'
compile 'com.google.firebase:firebase-auth:9.6.1'
compile 'com.google.firebase:firebase-database:9.6.1'
将您的 grandle 中匹配的版本更改为上面指定的版本。
关于android - FirebaseUser 的个人资料未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40723639/
我正在使用passport.js 为我的node.js 应用程序提供OAuth 身份验证。但我确实有一个疑问: 当我在身份验证时收到配置文件对象(当您定义 OAuth 策略时)时,该对象对于所有提供商
我正在尝试对 wordpress 布局进行解码/逆向工程。我正在浏览 CSS 文件,无法弄清楚这个长长的菜单 mumbo-jumbo 是什么! 我不是要任何人检查代码,而是让我知道我在看什么。这些似乎
所以我尝试制作一个包含私有(private)配置文件的 symfony 项目,并且我使用 FriendsOfSymfony,但是如果我创建两个用户,每个人都可以看到其他人上传的文件。我尝试在多个网站上
我正在编写一个需要使用已登录 G+ 用户的公开个人资料图片的 JS 应用。 如果我有用户 ID,我可以使用 Google+ API 查询个人资料数据。 https://developers.googl
我看过很多关于 facebook 身份验证的帖子,要么是旧的,要么不能正常工作。 然而,最终我在我的项目中做了一些可行但不完全的东西。这是我要求的代码 var facebookAuth
我是一名优秀的程序员,十分优秀!