Отсутствует токен Firebase ⇐ Android
-
Гость
Отсутствует токен Firebase
Я разрабатываю приложение Flutter с помощью Firebase, и у меня проблема со входом в систему через Google на Android, тот же код работает без проблем с ios. В Android я получаю сообщение об ошибке отсутствия токена и не могу войти в систему. Я пытаюсь случайно прочитать документацию по коду и другие материалы, но ничего не могу сделать.
import 'package:firebase_auth/firebase_auth.dart'; импортировать «пакет: google_sign_in/google_sign_in.dart»; абстрактный класс AuthBase { Пользователь? получить текущего пользователя; Stream authStateChanges(); Future SignInWithGoogle(); Future SignInAnonymous(); Будущее SignOut(); } класс Auth реализует AuthBase { окончательный _firebaseAuth = FirebaseAuth.instance; Stream authStateChanges() => _firebaseAuth.authStateChanges(); @переопределить Пользователь? получить currentUser => _firebaseAuth.currentUser; @переопределить Future SignInAnonymous() async { окончательный userCredential = ждут _firebaseAuth.signInAnonymous(); вернуть userCredential.user; } @переопределить Future SignInWithGoogle() async { окончательный googleSignIn = GoogleSignIn(); пытаться { окончательный GoogleSignInAccount? googleUser = ожидайте googleSignIn.signIn(); если (googleUser != ноль) { окончательная GoogleSignInAuthentication googleAuth = ожидание googleUser.authentication; if (googleAuth.accessToken != null && googleAuth.idToken != null) { окончательный UserCredential authResult = ждут _firebaseAuth.signInWithCredential( GoogleAuthProvider.credential( accessToken: googleAuth.accessToken, idToken: googleAuth.idToken, ), ); вернуть authResult.user; } еще { throw StateError('Отсутствует токен аутентификации Google'); } } еще { throw StateError('Вход в Google прерван'); } } поймать (е) { print("Ошибка входа в систему Google: $e"); перебросить; } } @переопределить FuturesignOut() async { окончательный googleSignIn = GoogleSignIn(); дождитесь googleSignIn.signOut(); дождитесь _firebaseAuth.signOut(); } } Я вижу, что я не первый с этой проблемой, но я не нашел решения, кто-нибудь знает, как ее решить?
Мне просто нравится, чтобы версия для Android работала так же, как и iOS
Я разрабатываю приложение Flutter с помощью Firebase, и у меня проблема со входом в систему через Google на Android, тот же код работает без проблем с ios. В Android я получаю сообщение об ошибке отсутствия токена и не могу войти в систему. Я пытаюсь случайно прочитать документацию по коду и другие материалы, но ничего не могу сделать.
import 'package:firebase_auth/firebase_auth.dart'; импортировать «пакет: google_sign_in/google_sign_in.dart»; абстрактный класс AuthBase { Пользователь? получить текущего пользователя; Stream authStateChanges(); Future SignInWithGoogle(); Future SignInAnonymous(); Будущее SignOut(); } класс Auth реализует AuthBase { окончательный _firebaseAuth = FirebaseAuth.instance; Stream authStateChanges() => _firebaseAuth.authStateChanges(); @переопределить Пользователь? получить currentUser => _firebaseAuth.currentUser; @переопределить Future SignInAnonymous() async { окончательный userCredential = ждут _firebaseAuth.signInAnonymous(); вернуть userCredential.user; } @переопределить Future SignInWithGoogle() async { окончательный googleSignIn = GoogleSignIn(); пытаться { окончательный GoogleSignInAccount? googleUser = ожидайте googleSignIn.signIn(); если (googleUser != ноль) { окончательная GoogleSignInAuthentication googleAuth = ожидание googleUser.authentication; if (googleAuth.accessToken != null && googleAuth.idToken != null) { окончательный UserCredential authResult = ждут _firebaseAuth.signInWithCredential( GoogleAuthProvider.credential( accessToken: googleAuth.accessToken, idToken: googleAuth.idToken, ), ); вернуть authResult.user; } еще { throw StateError('Отсутствует токен аутентификации Google'); } } еще { throw StateError('Вход в Google прерван'); } } поймать (е) { print("Ошибка входа в систему Google: $e"); перебросить; } } @переопределить FuturesignOut() async { окончательный googleSignIn = GoogleSignIn(); дождитесь googleSignIn.signOut(); дождитесь _firebaseAuth.signOut(); } } Я вижу, что я не первый с этой проблемой, но я не нашел решения, кто-нибудь знает, как ее решить?
Мне просто нравится, чтобы версия для Android работала так же, как и iOS
Мобильная версия