我正在尝试在我的flutter应用程序上实现Facebook Firebase身份验证
我已经解决了一切,一切都很顺利,但在Facebook要求用户提供登录凭据之后。它给了我一个错误:
PlatformException(ERROR_INVALID_CREDENTIAL, The supplied auth credential is malformed or has expired. [ Bad access token: {"code":190,"message":"Invalid OAuth access token."} ], null)
这是我使用的代码:
Future faceBookSignIn() async {
try{
var result = await _facebookAuth.logIn(['email']);
print(result.status.toString());
if (result.status == FacebookLoginStatus.loggedIn){
final AuthCredential credential = FacebookAuthProvider.getCredential(accessToken: result.accessToken.toString());
AuthResult facebookResult = await _auth.signInWithCredential(credential);
FirebaseUser facebookUser = facebookResult.user;
return _userFromFirebaseUser(facebookUser);
}
}catch(e){
print(e);
}
}
这是我在pubspec.yaml
上使用的软件包
firebase_auth: ^0.16.0
google_sign_in: ^4.4.1
flutter_facebook_login: ^3.0.0
flutter_auth_buttons: ^0.8.0
将result.accessToken.toString
更改为result.accessToken.token
将解决您的问题。
FacebookAuthProvider.getCredential(
accessToken: result.accessToken.token,
),