我正在使用Firebase首先使用电子邮件和密码创建用户帐户,然后更新了可以访问的个人资料图片 currentuser.getphotourl()。通过遵循代码
y2
在家庭中,现在已显示用户图像和电子邮件。但是在下一个活动中,当我使用电话身份验证并输入代码,然后在家庭活动中,用户图像和电子邮件都为空白。
我想使用用户电话号码进行以后的访问而不登录。但是我认为最好只为电话创建数据库,改用电话认证,并在必要时检索电话号码。但是使用电话身份验证,旧电子邮件,个人资料网址已替换或发生类似错误。
我该如何解决?这是预期的行为吗?
答案 0 :(得分:0)
从您的问题中我可以理解的是:
email
和profilePic
正确显示email
和profilePic
现在为空。在这种情况下,您可以将用户email
和profileUrl
存储在saveInstanceState中:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("message", "This is a saved message");
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Toast.makeText(this, "onRestoreInstanceState", Toast.LENGTH_SHORT).show();
}
在onCreate中,您可以每次检查一次saveInstance状态是否不为null,然后获取并设置数据:
if (savedInstanceState != null) {
String message = savedInstanceState.getString("key");
Toast.makeText(this, message, Toast.LENGTH_LONG).show();
}
或者您可以只在onResume
本身中设置电子邮件和profilePic。
这将在每次调用OnResume时设置电子邮件和profilePic,并且可能会解决问题。