android - 使用 Facebook 登录时无法切换帐户
问题描述
该应用程序允许用户使用 Facebook 登录,但当用户想要使用不同的 Facebook 帐户登录时,我遇到了问题,此页面只会显示继续按钮。有没有办法让用户选择使用不同的帐户进行登录?
Future<User> signInWithFacebook() async {
final fb = FacebookLogin();
final response = await fb.logIn(permissions: [
FacebookPermission.publicProfile,
FacebookPermission.email,
]);
switch (response.status) {
case FacebookLoginStatus.Success:
final accessToken = response.accessToken;
final userCredential = await _firebaseAuth.signInWithCredential(
FacebookAuthProvider.credential(accessToken.token),
);
return userCredential.user;
case FacebookLoginStatus.Cancel:
throw FirebaseAuthException(
code: 'ERROR_ABORTED_BY_USER',
message: 'Sign in aborted by user',
);
case FacebookLoginStatus.Error:
throw FirebaseAuthException(
code: 'ERROR_FACEBOOK_LOGIN_FAILED',
message: response.error.developerMessage,
);
default:
throw UnimplementedError();
}
}
@override
Future<void> signOut() async {
final googleSignIn = GoogleSignIn();
await googleSignIn.signOut();
final facebookLogin = FacebookLogin();
await facebookLogin.logOut();
await _firebaseAuth.signOut();
}```
解决方案
推荐阅读
- json - 从 Redux 中的 fetch 调用返回一个数组到 React 组件
- swift - 值的数据库计数
- sql - 在sql中的where条件中传递数组
- android - 点击通知打开新活动
- c - 正确使用 malloc/realloc 用于 typedef 结构
- codeigniter - 找不到 Codeigniter 的主页
- php - ajax 上的 JS 警报添加到购物车以获取 Woocommerce 中的特定产品类别计数
- c++ - 通过自定义分隔符从文件中读取对象数组
- specman - Specman e覆盖率:忽略的值出现在覆盖率统计中
- laravel - 没有表单和请求功能的 Laravel 上传