In database code, some commands have been updated. 🔹Firebase has been changed to FirebaseFirestore command. 🔹getDocument() has been changed to get() 🔹document() has been changed to doc(). 🔹setData() has been changed to set(). I hope these updated commands help you to code faster 💫
Hey, I just want to tell you that your tutorial saved me. :) I was looking for flutter firestore tutorials and most of them are too complicated. I loved that you are showing the errors because we see how it is in real life. Awesome work!
Thank you so much for this tutorial! Helped me understand the authentication with firebase which was previously very confusing for me. Keep up the good work! :)
Thanks for the tutorial Sanskar, appriciate it. I need to add a few more things. Firstly, when you create your own 'textStyle widget' just implement a consturctor for the 'fontSize'. In constructor you could take an integer as a parameter and assign it to 'fontSize'. Thus, you avoid redundancy. Secondly, when you create the sign in and sign up pages. You didn't consider about some errors. Like, if user already signed in, prevent re-register. Also, in sign in page, if email and password do not match it will sign you in anyway.
Yup the sign up and sign in things were intentional I wanted to save time and show the main feature but yes will try to include from upcoming tutorials
Awesome stuff man! Really handy for my CS project on app dev, pls make more vids like this! Really thankful for the learning as well. Perhaps u could extend it towards creating a chat history, having notifications, etc..
Your channel is dope. This is actually insane to have access to these high quality pieces of informations. I learn so much content thanks to you. Thank you very much 🙏 🙏
Sir I love your teaching style, you explain everything in your video. But I am facing problem while following your this tutorial, because packages are updated. Can you make updated video on this...
I really appreciate the effort you made in this series. I just have to point one thing out that because of no planning, the structure of the app is all over the place. If you create a step by step plan this wouldn't happen. Other than that keep up the hard work
in 01:04:30 it gives me exception handling that (type 'String' is not a subtype of type 'QuerySnapshot' in type cast) if I give searchsnaphot = val as QuerySnapshot and if I give searchsnapshot = val then it give me error at val and show String' can't be assigned to a variable of type 'QuerySnapshot'....help me in this
Your have very good quality and you are enough capable to present it in an easy way.But there always I suffer for sound quality. Sound quality too much low . Next time please consider it before making videos. Thank you
Thanks Caramel, I did a 15 day live teaching building 5 apps send me a mail at contact@sanskar.dev i will share for free. if you like to support you can www.buymeacoffee.com/sanskartiwari
@@kamalkishorkumar4278 just replace existing lines with these in ur code return userTile( searchResultSnapshot.docs[index].data().toString().substring(searchResultSnapshot.docs[index].data().toString().indexOf(','), searchResultSnapshot.docs[index].data().toString().indexOf('}')).replaceAll('{userEmail:', '').replaceAll('userName:', '').replaceAll('}', '').replaceAll(',', ''), searchResultSnapshot.docs[index].data().toString().substring(searchResultSnapshot.docs[index].data().toString().indexOf(':'), searchResultSnapshot.docs[index].data().toString().indexOf(',')).replaceAll('{userEmail:', '').replaceAll('userName:', '').replaceAll('}', '').replaceAll(':', ''), );
This is awesome! Thanks! I found the link to the written tutorial for part 1 but am not able to find for parts 2,3,4. Can you please share that too. I get better understanding by reading at my pace. Thanks!
Thank u sanskar for sharing this video , but when I run , a message is created at the terminal saying that [firebase_auth/unknown] com.google.firebase.FirebaseException: An internal error has occurred. [ CONFIGURATION_NOT_FOUND ] Can u please help me with this
I got this error after sign up trying to get to the chat room screen.. What did I do wrong? The method 'then' was called on null. Receiver: null Tried calling: then(Closure: (dynamic) => Null
this basically means that your program is trying to print data before actually getting or completing the operation of getting the data. I also faced this once and I ended up using two nested future builders to solve the problem - one for only rendering when the data is received and the other for confirming that data is not null and rendering the page.
@@itaintcal in 01:04:30 it gives me exception handling that (type 'String' is not a subtype of type 'QuerySnapshot' in type cast) if I give searchsnaphot = val as QuerySnapshot and if I give searchsnapshot = val then it give me error at val and show String' can't be assigned to a variable of type 'QuerySnapshot'....help me in this if you have knowledge regarding this
Getting this error when i type anything in the search bar W/IInputConnectionWrapper( 6223): beginBatchEdit on inactive InputConnection W/IInputConnectionWrapper( 6223): getTextBeforeCursor on inactive InputConnection W/IInputConnectionWrapper( 6223): getTextAfterCursor on inactive InputConnection W/IInputConnectionWrapper( 6223): getSelectedText on inactive InputConnection
I'm confused, i observe that you jump directly from Sign Up to Chat Rooms Page, so in what part do you implement login function? *I'm a beginner in english so it was a little bit hard to me.
hey.. I am getting below error.. LateInitializationError: Field 'searchSnapshot' has not been initialized. and if I am not adding late modifier to searchSnapshot , even then getting error.. Please help!! Solution: define searchSnapshot as below QuerySnapshot? searchSnapshot; this has resolved the issue for me.
I'm curious about Firebase and reads. As I understand it, every individual message gets its own doc, which will translate to a read for every message. So whenever a user enters a chatroom, it will create a new read for every message ever sent or received all over again. So if a room has 50 messages in it, every time a user enters, you will be billed for 50 reads. Am I misunderstanding this? Best methods to minimize these reads? This structure seems untenable.
inkwell have this ripple effect of material design while gesture detector does not so depending on what you like you can use inkwell as well i will suggest to go give it a try just change Geaturedetector with inkwell and run the code and see yourself
Please Mr Sanskar I need your help. While implementing the search by username methods I got this error "The method 'where' isn't defined for the type 'CollectionReference' ".I'm on VsCode and its propose me to change the 'where' method into 'whereIn'. I also tried but it is worst.
Hey Sanskar, I want to switch between 3 mainpages with icons like you did with signin and signup. But i have no idea how to do that. Can someone help me?
W/DynamiteModule( 8045): Local module descriptor class for providerinstaller not found. I/DynamiteModule( 8045): Considering local module providerinstaller:0 and remote module providerinstaller:0 W/ProviderInstaller( 8045): Failed to load providerinstaller module: No acceptable module found. Local version is 0 and remote version is 0 i am getting this error clicking search button. i have latest flutter and dart version. plz help me
Hey mate awesome video! I was wondering. I'd like to do all the downloading of QuerySnapshots in a controller rather than the view.dart file. This issue I am finding is that if I am changing values in a different class than the _SearchState I have no way to setState (rebuild the widget) once the values are downloaded. Are you able to provide any guidance on this? I'm getting the feeling Flutter just isn't built to separate out a view and it's controller but I much prefer writing code that way.
please help me i am getting this error I/flutter (11829): [firebase_auth/unknown] Given link is not a valid email link. Please use FirebaseAuth#isSignInWithEmailLink(String) to determine this before calling this function I/flutter (11829): null
How to resolve this error "I/flutter (17910): PlatformException(ERROR_USER_NOT_FOUND, There is no user record corresponding to this identifier. The user may have been deleted., null) "
Please make sure the email id and Password is created in Firestore before its passed through the Form. The instructor missed this step and was not much clear on this. And make sure to use print(${val.userId}) in signup.dart
sure you can run two functions and return the data from both, that way you can have a fucntion which make a search via username and other via email does that answer your questions?
Please help me. I looked at the comments but it didn't help. Widget searchList() { return searchSnapshot != null ? ListView.builder( itemCount: searchSnapshot.docs.length, shrinkWrap: true, itemBuilder: (context, index) { return SearchTile( /* Error*/ userName: searchSnapshot.docs[index].data()["name"], /* Error*/ userEmail: searchSnapshot.docs[index].data()["email"], ); }) please help me. Error: Error: The operator '[]' isn't defined for the class 'Object'. - 'Object' is from 'dart:core'. Try correcting the operator to an existing operator, or defining a '[]' operator. userName: searchSnapshot.docs[index].data()["name"],
So, I have been working on the searching user section but when I type in and press the button, it doesn't show any user's information at all. It is like the whole SearchTile class is not working since. Can anyone help me with this? Thank you.
@@tulikatayal9062 Actually I completed almost last 2 errors were there,I had problem with emulator as well as device ,couldn't see output at all.By making trial and error to fix it, from two errors it has increased to more suddenly. I don't know what to do now😳
please help me i had this error how to solve this error : PlatformException(FirebaseException, An internal error has occurred. [ API key not valid. Please pass a valid API key. ], null)
Widget searchList() { return ListView.builder( itemCount: searchSnapshot.documents.length, itemBuilder: (context, index) { return SearchTile( //error: The operator '[]' isn't defined for the type 'Map Function()'. userName: searchSnapshot.documents[index].data['name'], //error: The operator '[]' isn't defined for the type 'Map Function()'. userEmail: searchSnapshot.documents[index].data['email'], ); }); } Can someone help me to with this? Error is showing for data['name'] and data['email']
just a query if someone could help - will using navigator for switching between signIn / signUp screen cause any problem later ? instead of using authenticate class to switch
50:03 that's weird because it worked for me with the map being created after 'isLoading = true'. Any idea why? But I tested it on a real android device because my AVD can't connect to the internet for some reason.
sanskar tiwari brother , first of all great tutorial, then have one issue that my circularprogressindicator is not showing after i press sign up button
@@soumyasouravpatnaik2246 Hey can you please help me , I am stuck at 01:06:22 I am tried and replicated every code until then, but on typing the name, I am not able to find user.
@@indianappguy it would be really awesome if you could create tutorial for creating a social media clone with using http calls instead of firebase (REST API)
Hi, I'm new to Flutter and Dart and there is one thing I don't quite understand. Regarding the Authenticate part, why do you have to call the toggleView() function as "toggleView" instead of "toggleView()" in the SignIn() and SignUp() arguments? For example, this SignIn(toggleView) instead of this SignIn(toggleView())? what's the difference?
the () will actually execute the function, and that's not what we want, we just want to pass the function as a parameter. So when we pass it without the (), the memory address of the function is passed as argument and that's the use case for SignIn and SignUp. Hope i helped u
Muhammed Adil Oh thanks, actually i figured it out sometime after this question was asked, but wasnt 100% sure of it. Thanks for the answer, im more confident now
I am getting MissingPluginException(No implementation found for method createUserWithEmailAndPassword on channel plugins.flutter.io/firebase_auth). Please help me out
can anyone help me with this...thanks in advance! , PlatformException(ERROR_NETWORK_REQUEST_FAILED, A network error (such as timeout, interrupted connection or unreachable host) has occurred., null)
I’m done with aunthentication but when i click on message for chat its doesn’t work .. is need to login the user from another mobile then it will work ??
How to resolve this error [core/no-app] No Firebase App '[DEFAULT]' has been created - call Firebase.initializeApp() Please how can I solve it please help
void main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp(Main()); }.........replace the void with this in the main.dart file
I'm facing this Error when I installed the cloud_firestore Plugin project :firebase_core_web not found. Please update settings.gradle. Plugin project :firebase_auth_web not found. Please update settings.gradle. Plugin project :cloud_firestore_web not found. Please update settings.gradle. THIS IS MY DEPENDENCIES : dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^0.1.3 firebase_auth: ^0.16.0 google_sign_in: ^4.5.3 cloud_firestore: ^0.13.5
bro i used same code as you written but continuously, i am getting this error Exception has occurred. PlatformException (PlatformException(firebase_auth, com.google.firebase.auth.FirebaseAuthUserCollisionException: The email address is already in use by another account., {code: email-already-in-use, additionalData: {}, message: The email address is already in use by another account.}))
bonjour, j'ai un probleme au niveau du searchSnapshot : LateInitializationError: Field 'searchSnapshot' has not been initialized. quelqu'un a eu le même problème ?
i, my name is Fabrice and I'm a beginner flutter developer. I am subscribed to all your RU-vid channels, twitter I even paid you a coffee by paypal. At the moment I have a problem with my application you are a professional I would like you to help me to finish it I will learn and I will pay you. You are very strong so I chose you to help me! please answer me
@sanskar Tiwari I would still like to send you money but I need your help I wrote to you on facebook, twitter, linkedin but can't answer me or do you want us to talk?