Flutter Firebase Twitter Auth lanzando un error
Estoy tratando de incorporar la autenticación de Twitter dentro de mi aplicación Flutter. Estoy siguiendo la documentación de FlutterFire pero obtengo un error arrojado. Me preguntaba si hay un problema en mi extremo o con el plugin de inicio de sesión de Twitter. Aquí está mi código:
Future<usercredential> signInWithTwitter() async {
// Crear una instancia de TwitterLogin
final twitterLogin = new TwitterLogin(
apiKey: '<1qOvE68aiVbk4URSARlfm0758>',
apiSecretKey: '<wqhwrybweiv5dveecsutesbnt6uwb6080d4vz6wdyy1get8paz>',
redirectURI: '<twitter-firebase-auth>://');
// Iniciar el flujo de inicio de sesión
final authResult = twitterLogin.login();
// Crear una credencial a partir del token de acceso
final twitterAuthCredential = TwitterAuthProvider.credential(
accessToken: authResult.authToken!,
secret: authResult.authTokenSecret!,
);
// Una vez iniciada la sesión, devuelve la credencial de usuario
return await FirebaseAuth.instance
.signInWithCredential(twitterAuthCredential);
}
Obtengo el siguiente error:
El getter ‘authToken’ no está definido para el tipo ‘Future
davy.ai
El error sugiere que el getter
authToken
no está definido para el tipoFuture<authresult>
. Al observar el código, parece que la variableauthResult
está definida como unFuture
y no se espera. Esto significa que el métodoTwitterLogin.login()
devuelve un tipoFuture<authresult>
, y la variableauthResult
es de ese tipo. Para solucionar este error, necesitamos esperar al métodoTwitterLogin.login()
como sigue:Esto esperará a que el método
login()
se complete antes de asignar el resultado aauthResult
.