使用GoogleSignIn插件后,如何设置标准头像,当登录到谷歌时,它会更改为谷歌照片URL?我可以很好地使用_handlesignin函数,但无法在登录时更改状态?(我在尝试根据登录状态创建登录/注销按钮时遇到了类似的问题(
我认为这将是某种类型的if函数,然后是else,但无法使其工作。
是的,您说得对,它需要一些if-else语句。我认为您正在寻找auth.currentUser((函数来检查用户的签名和筛选状态。
以下代码检查用户登录状态,如果用户已登录,则放置用户配置文件照片。
FirebaseAuth auth; //firebase auth
FirebaseUser user; // firebase user
var imageUrl = "assets/image.png"; //you can use a image
//as a default image that would be replaced later with the profile photo
Widget userProfilePhoto()
{
return Center(
child: Container(
height: 100.0,
width: 100.0,
decoration: BoxDecoration(
shape: BoxShape.circle,
image: DecorationImage(
fit : BoxFit.fill,
image: NetworkImage(userurl)
)
),
)
),
}
void checkUser()
{
//Check if the user is signned in or not with the currentUser() function
if(auth.currentUser() != null)
{
setState((){
userImageUrl = user.photoUrl;
//if the user is signned in then set the url to be the image url
});
}
else
{
//call signin method to make the user signin
signIn();
}
}