As soon as the software for Android speak begins, it ought to verify that an individual are finalized in
1: Handle User Sign-In
If yes, the app should go ahead of time and highlight the contents of the chat place. Usually, it must redirect the consumer to either a sign-in display or a sign-up display screen. With FirebaseUI, promoting those screens requires a lot less code than you may picture.
Inside the onCreate() approach to MainActivity , check if the consumer is already closed in. To achieve this, check if the present FirebaseUser item isn’t null . Whether it’s null , you have to produce and arrange an Intent item that opens up a sign-in activity. To achieve this, use the SignInIntentBuilder course. Once the purpose is ready, you should establish the sign-in task using the startActivityForResult() way.
Observe that the sign-in task additionally allows new users to sign up. Therefore, you don’t need to compose any added signal to address individual enrollment.
As you care able to see in earlier rule, in the event the consumer is closed in, we very first exhibit a Toast inviting the consumer, and then call a method named displayChatMessages. For the present time, simply generate a stub for it. We’ll be adding code to they later.
The moment the user features closed in, MainActivity will receive an outcome by means of a purpose . To address it, you should bypass the onActivityResult() process.
In the event the consequences’s code was RESULT_OK , it indicates the consumer have signed in effectively. In that case, you have to contact the displayChatMessages() means again. Usually, call finish() to close off the application.
2: Deal With User Sign-Out
Automagically, FirebaseUI makes use of Smart Lock for Passwords. Therefore, as soon as customers sign in, they will remain finalized in even when the app was restarted. To allow the consumers to signal down, we’ll now include a sign-out solution to the overflow selection of MainActivity .
Generate a new diet plan site file called main_menu.xml and add just one object to they, whoever subject attribute is set to Sign around. The belongings in the file should look in this way:
To instantiate the eating plan site inside MainActivity , override the onCreateOptionsMenu() system. After that contact the inflate() technique of the MenuInflater object.
Then, override the onOptionsItemSelected() way to manage click activities from the menu item. Inside the way, you’ll name the signOut() way of the AuthUI class to sign the consumer away. Due to the fact sign-out procedure is actually accomplished asynchronously, we’ll include an OnCompleteListener to they.
Once the user provides signed aside, the app should shut immediately. This is why the reasons why you read a phone call into the finish() technique during the signal over.
5. Produce A Model
In order to put the chat emails in Firebase real-time databases, you need to develop a design for them. The design of this chat message, which we produced earlier on within tutorial, provides three opinions. To populate those views, the product as well need to have about three sphere.
Make a coffee course also known as ChatMessage.java and incorporate three representative factors to they: messageText , messageUser , and messageTime . In addition, include a constructor to initialize those factors.
To make the design appropriate for FirebaseUI, you should include a standard constructor to they, together with getters and setters for all your associate factors.
6. Blog Post A Chat Content
Within the listener, you should first have a DatabaseReference object using the getReference() approach to the FirebaseDatabase lessons. You can then name the push() and setValue() solutions to create brand-new instances of the ChatMessage lessons for the real time databases.