Как выйти из Microsoft и Github с помощью Flutter Firebase
Кажется, я не могу заставить выйти из Github или Microsoft, как я это делаю для Google. С помощью пакета google_sign_in.
Future<GoogleSignInAccount?> _signOutWithGoogle() async {
return Chain.capture(() async {
try {
return await GoogleSignIn().signOut();
} on Exception catch (error, stackTrace) {
final terseStacktrace = Chain.forTrace(stackTrace).terse;
logger.e(
"GoogleSignOutException",
error: error,
stackTrace: terseStacktrace,
);
rethrow;
}
});
}
Future<Result<void, LogOutFailure>> signOut() async {
try {
if (_auth.currentUser?.providerData.first.providerId == "google.com") {
await _signOutWithGoogle();
}
await _auth.signOut();
return const Result.success(null);
} catch (_) {
return const Result.error(LogOutFailure());
}
}
Без выхода из пакета я автоматически войду в систему с использованием предыдущих учетных данных и не смогу их изменить.
Та же проблема сохраняется при входе в Microsoft и Github.
import 'package:firebase_auth/firebase_auth.dart';
Future<UserCredential> signInWithMicrosoft() async {
final microsoftProvider = MicrosoftAuthProvider();
if (kIsWeb) {
await FirebaseAuth.instance.signInWithPopup(microsoftProvider);
} else {
await FirebaseAuth.instance.signInWithProvider(microsoftProvider);
}
}
Вызов_auth.signOut()
этого недостаточно, поскольку он регистрирует только пользователя Firebase, а не пользователя GitHub или Microsoft.
Есть ли пакет или реализация, которую я могу использовать для решения этой проблемы?