Firebase Guide
Firebase Guide
import 'package:beacon/app/home/appbar.dart';
import 'package:beacon/logpage/signin.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
@override
State<Login> createState() => _LoginState();
}
signup authentication
registration() async{
print("objec");
if(usernameController.text!=""&& emailController.text!=""&&
passwordController.text!=""){
print("obje");
try{
print('yes1');
UserCredential userCredential = await
FirebaseAuth.instance.createUserWithEmailAndPassword(email: email,
password: password);
await FirebaseAuth.instance.currentUser!.updateDisplayName(name);
await
FirebaseAuth.instance.currentUser!.verifyBeforeUpdateEmail(email);
await FirestoreServices.saveUser(name, email,
userCredential.user!.uid);
ScaffoldMessenger.of(context).showSnackBar( SnackBar(content:
Text('Successfully Registered',style: TextStyle(
fontSize: 20
),)));
// Get.snackbar('Successfully Registered', ' ',
// snackPosition: SnackPosition.BOTTOM,
// backgroundColor: Colors.transparent,
// colorText: Colors.blue,
// duration: const Duration(seconds: 2),
// animationDuration: const Duration(milliseconds: 800),
// // icon: const Icon(
// // Icons.warning_amber,
// // )
// );
print("obj");
// Navigator.push(context, MaterialPageRoute(builder:
(context)=>const Signin()));
Get.to(()=>Signin());
}on FirebaseAuthException catch(e){
print("ob");
if(e.code=='weak-password'){
ScaffoldMessenger.of(context).showSnackBar( SnackBar(content:
Text('Your password is too weak',style: TextStyle(
fontSize: 18
),)));
// Get.snackbar('Your password is too weak', ' ',
// snackPosition: SnackPosition.BOTTOM,
// backgroundColor: Colors.transparent,
// duration: const Duration(seconds: 2),
// animationDuration: const Duration(milliseconds: 800),
// colorText: Colors.blue,
// // icon: const Icon(
// // Icons.warning_amber,
// // )
// );
}else if(e.code=="email-already-in-use"){
print("o");
ScaffoldMessenger.of(context).showSnackBar( SnackBar(content:
Text('Account already exist',style: TextStyle(
fontSize: 20
),)));
// Get.snackbar('Account already exist ', ' ',
// snackPosition: SnackPosition.BOTTOM,
// backgroundColor: Colors.transparent,
// duration: const Duration(seconds: 2),
// animationDuration: const Duration(milliseconds: 800),
// colorText: Colors.red,
// // icon: const Icon(
// // Icons.warning_amber,
// // )
// );
}
}
}
}
signin authentication
userlogin() async {
try {
await FirebaseAuth.instance
.signInWithEmailAndPassword(email: email, password: password);
Get.to(() => const Appbar());
} on FirebaseAuthException catch (e) {
print('error:$e');
if (e.code == 'user-not-found') {
print("not found user ");
ScaffoldMessenger.of(context).showSnackBar( const SnackBar(content:
Text('not found user',style: TextStyle(
fontSize: 20
),)));
} else if (e.code == 'wrong-password') {
print("wrongpassword");
ScaffoldMessenger.of(context).showSnackBar( const SnackBar(content:
Text('wrong-password',style: TextStyle(
fontSize: 20
),)));
}
}
}
import 'package:beacon/app/home/appbar.dart';
import 'package:beacon/logpage/signin.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:google_sign_in/google_sign_in.dart';
GoogleSignInAccount? _user;
//
// class AuthMethods {
// final FirebaseAuth auth = FirebaseAuth.instance;
//
// getCurrentUser() async {
// return auth.currentUser;
// }
//
// signInWithGoogle(BuildContext context) async {
// final FirebaseAuth firebaseAuth = FirebaseAuth.instance;
// final GoogleSignIn googleSignIn = GoogleSignIn();
//
// final GoogleSignInAccount? googleSignInAccount =
// await googleSignIn.signIn();
//
// final GoogleSignInAuthentication? googleSignInAuthentication =
// await googleSignInAccount?.authentication;
//
// final AuthCredential credential = GoogleAuthProvider.credential(
// idToken: googleSignInAuthentication?.idToken,
// accessToken: googleSignInAuthentication?.accessToken);
//
// UserCredential result = await
firebaseAuth.signInWithCredential(credential);
//
// User? userDetails = result.user;
//
// if (result != null) {
// Map<String, dynamic> userInfoMap = {
// "email": userDetails!.email,
// "name": userDetails.displayName,
// "imgUrl": userDetails.photoURL,
// "id": userDetails.uid
// };
// await DatabaseMethods()
// .addUser(userDetails.uid, userInfoMap)
// .then((value) {
// Navigator.push(
// context, MaterialPageRoute(builder: (context) => const
Appbar()));
// });
// }
// }
import 'package:shared_preferences.dart';
class AuthService {
return {
'email': prefs.getString(KEY_USER_EMAIL),
'name': prefs.getString(KEY_USER_NAME),
};
await prefs.clear();