我正在构建一个 Flutter 应用程序并且我已经集成了 Firebase,但是当我点击一个按钮来注册、登录或注销时,我不断收到这个错误。我见过其他人问过同样的问题,但似乎没有一个对我有用。我正在使用 Flutter 和Android Studio。我该如何解决这个问题?
这是我的代码的摘录
class HomeScreen extends StatefulWidget {
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.red,
body: Center(
child: Container(
child: RaisedButton(
onPressed: () {
FirebaseAuth.instance.signOut().then((value) {
Navigator.pushReplacement(
context,
MaterialPageRoute(
builder: (context) =>
LoginScreen()));
});
},
child: Text("Logout"),
)
)
)
);
}
}
Run Code Online (Sandbox Code Playgroud)
下面是抛出的异常
class HomeScreen extends StatefulWidget {
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> { …Run Code Online (Sandbox Code Playgroud) 我是 Flutter 的新手。我有Firebase Auth/Google Auth 的问题FirebaseUser未定义代码:
FirebaseAuth _auth = FirebaseAuth.instance;
GoogleSignIn googleSignIn = GoogleSignIn();
Future<FirebaseUser> currentUser() async { // The Issue is here in the Future<>
final GoogleSignInAccount account = await googleSignIn.signIn();
final GoogleSignInAuthentication authentication =
await account.authentication;
final GoogleAuthCredential credential = GoogleAuthProvider.getCredential(
idToken: authentication.idToken, accessToken: authentication.accessToken);
final AuthResult authResult = await _auth.signInWithCredential(credential);
final FirebaseUser user = authResult.user; // and here as I can't define this FirebaseUser object to return
return user;
}
Run Code Online (Sandbox Code Playgroud)
pubspec.yml
dependencies:
flutter:
sdk: …Run Code Online (Sandbox Code Playgroud) google-authentication dart firebase firebase-authentication flutter
Future<void> _getUserData() async {
final database = Firestore.instance;
try {
FirebaseUser _currentUser = await FirebaseAuth.instance.currentUser();
String authid =_currentUser.uid;
String email = _currentUser.email;
Map<String, String> userData = {
'AuthUserId':'$authid',
'Email':'$email',
'FullName': '',
'MobileNum': '',
'Address': '',
'City/Village': '',
'District': '',
'State': '',
'PinCode': '',
};
database.collection('UserData').add(userData).catchError((e) {
print(e);
});
} catch (e) {
print(e);
}
}
@override
void initState() {
super.initState();
_getUserData();
}
Run Code Online (Sandbox Code Playgroud)
"I am trying to insert the data into the cloud firestore and i have called this function in …
使用 FirebaseAuth 和 FirebaseUser 创建用户登录方法时,我收到 flutter 错误。主要是告诉我将 FirebaseUser 强制转换或更改为 AuthResult,这两者都会导致无法创建 firebase 用户,从而导致在频道 plugins.flutter.io/firebase_auth 上找不到方法 createUserWithEmailAndPassword 的实现。
我已经尝试过来自 Android Studio 的响应,但没有运气。最好的解决方法是恢复到较早的 FirebaseAuth 版本。我目前正在使用版本:firebase_auth:0.18.0+1。
当我写这行代码 FirebaseUser user = await FirebaseAuth.instance.signInWithEmailAndPassword(email: _email, password: _password); 它显示一个错误,“FirebaseUser”已被弃用,不应使用。类 Firestore 已弃用,请改用 'FirebaseFirestore' .. 尝试将已弃用成员的使用替换为 replacement.dartdeprecated_member_use 与firestore sdk 依赖项 firebase_core: 0.5.0 cloud_functions: 0.6.0 firebase_storage: 4.0.0 firebase_auth: 0 相同+1