Firebase alone although a useful and powerful back end is not enough to build a truly great android app. It is best to create a node.js server to play middle man between your android client and Firebase. By having a node.js server, you improve security, app performance, and unlock features such as user to user push notifications!
The main purpose of this course is to show you how to build and utilize a node.js server with Firebase to create a powerful android application. In order to accomplish this goal, we will build a fully functional chatting app from scratch. This app will contain features such as real time chatting, user profiles, and notifications to name a few. You will also pick up some UI tricks like creating a bottom navigation bar, using circular image views, and wiring up a search bar.
This course is one of a kind as there is no other Android course that tackles implementing a node.js server into development. By taking this course not only will you achieve a whole new level in your development skills but you'll be able to build any app you can think of!
In this lecture we will talk about the goals of the course as well as see a demo of the app we will build.
In this lecture we will discuss and install node.js into our machines. We will also grab Atom, a brand new IDE to work with node effectively.
In this lecture we will organizing the files and folders that will hold our node server. In addition, we also see how to write hello world in java-script.
In this lecture, we will build a simple node.js server using express and install a few packages using the node package manager.
In this lecture, we are going to create our android app beast chat. In addition, we are going to connect the app to our server using sockets.
Our android client will use fragments for all the screens and for this lecture we prepare this. In addition, we build our first screens.
In this lecture we add firbase to both our android client and node.js server. By adding firebase to our node server, we grant it admin access to our database.
In this lecture, we build a very simple login and registration screen.
In this lecture, we prepare our android client to send the user registration info to our server.
In this lecture, we complete setting up our android client to send the user information to our server.
In this lecture, we prepare our server to retrieve the user registration from our client.
In this lecture, we use our server to register a user using Firebase.
After registering our user, we need to let the client know if the request failed our succeeded. In this lecture, we see how to send the android client a response from our server.
In this lecture, we create a custom authentication token for our user using the server. This token will contain the users email address and will substantially decrease the amount of firebase rules needed.
In this lecture, we write rxjava subscription methods in order to send the users login information to our node server.
In this lecture, we build an authentication check for our app to insure that a user must be logged in to use the main features.
To finish off the second section, we complete our login by storing the users information inside a shared preference. In addition, we test both our server and client code for user login.
In this lecture, we add and set up a bottom navigation with pictures inside our android project.
In this lecture, we finish setting our our apps navigation by hooking up fragments to our bottom bar. In addition, we also see how to use an android animation. The fade out!
In this lecture, we build an adapter and a few fragments for our view-pager. This view-pager will hold our friends flow inside the app.
In this lecture, we finish setting up our view-pager by hooking it up to our apps UI.
In this lecture, we are going to prepare our first recycler view by building all the necessary layouts. This recycler-view will have a search bar at the top in order to allow the user to search for friends.
In this lecture, we finish building all the necessary layouts for our search bar recycler-view.
In this lecture, we build the recycler-views adapter and view holder. With these two items build, all that is left is adding data to the recycler-view.
in this lecture, we see how to see our search bar recycler-view to display all the users from firebase.
In this lecture, we will explain and start implementing the flow for friend requests on our client side.
In this lecture, we continue with our friend request logic and integrate the friend request withdraw feature.
In order to complete sending a friend request, we must access and write inside another users data. This is strictly forbidden in our app. Therefore, we will use our server to do the task.
In this lecture, we finish up sending friend requests.
In this lecture, we integrate an important feature. That feature is once a users gets a friend request, he or she cannot then request the other user.
In this lecture, we see how to use rx-java to assist in creating a fully functional search bar.
In this lecture, we start displaying the users friend requests by building the necessary layouts and making a view holder.
In this lecture, we finish displaying the friend request by hooking up our adapter and data.
In this lecture, we wire up both our client and server to approve or decline friend requests.
In this lecture, we start building our final recycler view for this section. We start of course with our layouts and also view holder. In addition, we also fix a few layout mistakes from the last lecture.
In this lecture, we finish showing the users their approved friends by hooking up our adapter and attaching data.
In this lecture, we see how to obtain and safely store the messaging id given to us from firebase.
In this lecture, we prepare our server to obtain and send a message to the appropriate user.
In this lecture, we prepare our android client to receive and display messages.
To finish off our friend request messaging, we also add an indicator to show the user any new friend requests.
In this lecture, we start building our message activity layout in order to start sending messages.
In this lecture, we finish building our message activity layout in order to start sending messages.
In this lecture, we build our forth recycler view! We get all the boiler plate stuff done such here as the item layout, view holder, and adapter.
In this lecture, we prepare our client to start sending user messages.
In this lecture, we prepare our server to handle the user messages correctly.
In this lecture, we start displaying user messages by wiring up our recycler-view and adapter.
In this lecture, we start designing the layout for our final recycler views items.
In this lecture, we finish designing the layout for our final recycler views items and build the view holder/adpater.
In this lecture, we hook up our final recycler view to our firebase data.
In this lecture to prepare our client side to handle sending chat rooms to the current user.
In this lecture, we finishing showing the user their chat rooms by preparing our server to handle the chat room data correctly.
Our chat room does work however, there are a few corrections we can make to allow a better user experience.
In this lecture, we finish polishing up the chat feature.
To finish off our chat feature and section, we add a indicator to our bottom bar to tell the user how many new messages they have.
In this lecture, we prepare the final screen for our app.
In this lecture, we allow the user to access their camera or photo picker inside the app to save an image.
In this lecture, we start requesting permissions to android 6 and up.
In this lecture we finish asking for permissions in Android Marshmallow. With that taking care of, we can use the camera freely on any device.
In this lecture, I show you how to turn a users picture into a bitmap and compress it to insure quality. In addition, we also see how to store the picture in firbase storage.
We add our final feature to our course which is a sign out button. I also want to personally thank each and very one of you for taking my course!
I started with android about 2 years ago right after my java course at Arizona State. However since I was in school, I only really focused on practicing and not developing my own apps. Now that school is over, I am a full fledged android developer! I've published one app so far called RushTPO which holds information about my fraternity.
The main object of my courses is to help you improve as an Android Developer. I believe there are enough beginner android courses on Udemy and I wish to take my students to bigger and higher heights. My courses tackle on subjects such as Firebase, Rxjava, advanced uI designs, and even implementing Node.js into development .
When I am not developing which is rare: you can catch me at the gym chasing a two plate bench, playing clash royale, or reading a good book about success stories. A great fun fact about me is that I was once addicted to playing chess but stopped once I found android development. If you have any questions, feel free to message me here but I will respond faster if you do so on Facebook!