Nemůžu registrovat uživatele v firebase (firebase_auth/neznámý: null)

0

Otázka

Já jsem registraci uživatele v firebase, a pokaždé, když se snažím zaregistrovat mi to ukazuje zmíněné chyby a donot send pověření k firebase. I když je získání pověření od firebase pro přihlášení, ale ukazuje chyba při ukládání hodnoty do firebase. Níže je kód, pouze registrace, která je stále na e-mailové adresy a hesla. Mám další otázku, že jako heslo a e-mail, jak jsem mohla ukládat další podrobnosti v firebase e.g Věk, Pohlaví atd. Laskavě mi pomohl projít.

class _ClientRegistrationScreenState extends State<ClientRegistrationScreen> {
  bool showSpinner = false;
  final _auth = FirebaseAuth.instance;
  File image;
  //final ImagePicker _picker = ImagePicker();
  String password;
  String confirmPassword;
  String email;
  String name;
  bool _passwordVisible = false;
  bool _confirmPasswordVisible = false;

  @override
  void initState() {

    _passwordVisible = false;
    _confirmPasswordVisible = false;
  }
  final _formKey = GlobalKey<FormState>();
  Expanded(
                    child: Center(
                      child: TextFormField(
                        validator: (value) {
                          if (value == null || value.isEmpty) {
                            return '*Email Address Required';
                          }
                          return null;
                        },
                     
                        ),
                      ),
                    ),
                  ),
                  Expanded(
                    child: Center(
                      child: TextFormField(
                        onChanged: (value){
                          password = value;
                        },
                        validator: (value) {
                          if (value == null || value.isEmpty) {
                            return '*Password Required';
                          }
                          if (password != confirmPassword) {
                            return 'Password Donot Match';
                          }
                          return null;
                        },
                        
                            onPressed: () {
                            
                              setState(() {
                                _passwordVisible = !_passwordVisible;
                              });
                            },
                          ),
                        ),
                      ),
                    ),
                  ),
                  Expanded(
                    child: Center(
                      child: TextFormField(
                        onChanged: (value){
                          confirmPassword = value;
                        },
                        validator: (value) {
                          if (value == null || value.isEmpty) {
                            return '*Confirm Password';
                          }
                          if (password != confirmPassword) {
                            return 'Password Donot Match';
                          }
                          return null;
                        },
                             onPressed: () {
                              
                              setState(() {
                                _confirmPasswordVisible = !_confirmPasswordVisible;
                              });
                            },
                          ),
                        ),
                      ),
                    ),
                  ),
                  RoundedButton(
                      colour: Colors.yellow,
                      opColour: Colors.yellow.withOpacity(0.2),
                      title: 'Register',
                      buttonTextColor: Colors.black,
                      onPressed: () async {
                        if (_formKey.currentState.validate()) {
                          setState(() {
                            showSpinner = true;
                          });
                         
                          ScaffoldMessenger.of(context).showSnackBar(
                            const SnackBar(content: Text('Processing Data')),
                          );
                        }

                        try {
                          final newUser = await _auth.createUserWithEmailAndPassword(
                              email: email, password: password);
                          if(newUser!=null){
                            Navigator.pushNamed(context, MainEmployeeScreen.id);
                            print(name);
                          }
                          setState(() {
                            showSpinner = false;
                          });
                        }
                        catch(e){
                          print(e);
                        }
                      }
                  ),
1

Nejlepší odpověď

0

Jste inicializovat firebase v hlavní funkci?

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}
2021-11-24 06:32:41

ano, mám inicializovat to v hlavní
Usama Bin Tahir

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................