Beast Android Development: Firebase Necessities
4.1 (66 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
563 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Beast Android Development: Firebase Necessities to your Wishlist.

Add to Wishlist

Beast Android Development: Firebase Necessities

Learn how to store user accounts, create real time databases, and implement Facebook login with Googles Firebase.
Best Seller
4.1 (66 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
563 students enrolled
Last updated 12/2016
Current price: $12 Original price: $50 Discount: 76% off
3 days left at this price!
30-Day Money-Back Guarantee
  • 10 hours on-demand video
  • 25 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Implement Googles Firebase as a backend for android apps.
  • Save user information and authenticate users using Firebase.
  • Create and show a real time database using Firebase.
  • Use Facebooks login API to register and autheticate users.
  • Effectively use an event bus and android flavor to organize server code.
  • Check for certain errors client side before a server request is sent.
  • Appropriately handle firbase errors.
View Curriculum
  • Download and install Android Stuidos.
  • Have two working android devices for development. Emulators are acceptable.
  • Have an excellent grasp on the object oriented programing language java.
  • Understand how to use android butterknife.
  • Understand how to use an event bus to decouple difference parts of an android application. We will be using Squares otto for this course.
  • Have a clear understanding of android topics such as the activity life cycle, flavors, and dialogs.
  • Obtain your SHA1 development fingerprint
  • Have excellent experience debugging android apps

This is a course for advanced android developers that showcases Googles Firebase. You as the student will grasp Firebase by building one complicated shopping list app from start to finish with the instructor.  

Firebase will be used to register and authenticate users into our application, create and display a real time database, and allow a sharing feature between users. In addition to learning about Firebase, advanced android topics are shown as well. These topics include checking for user errors client side, using an event bus, and finally implementing the Facebook login API. 

The course is structured as a code along however towards the end you will be presented with challenges. These challenges will allow you to put your Firebase knowledge to the test and more importantly push you as a developer. At the end of the course, you will have your final challenge and unlike the other challenges, there will be no solution. However, the instructor will be there to help and guide you as needed.

It is critical to have a back end for any android application. Even if user authentication if not needed, the apps data should be stored somewhere other then the users phone. By taking this course, you will be able to use one of the most powerful back ends out there. With over 10 hours of content, you will obtain a clear understanding of Firebase.   

Who is the target audience?
  • This course is designed for an advanced android developer who wants to learn about Firebase.
  • If you are looking for a beginner this course is not for you.
  • Intermediate developers should read the course requirements before proceeding.
Compare to Other Android Development Courses
Curriculum For This Course
53 Lectures
Preparing Our Project
4 Lectures 35:03

Here is an overview of the course, the course goals, and a first look at the app we are going to build.

Preview 10:17

We will grab all of the dependencies needed to complete this project as well as implement a flavor for our server code.

Preview 06:51

In order to decouple our application, we will be using an Square's event bus Otto. Otto combined with the live flavor will allow us to keep all server code organized.

Square's Otto

Before we can start using Firebase, we need to add the necessary credentials. Here we will register our project inside the Firebase console, get all the dependences, and add Firebase globally into our project.  

Preview 11:04
Registering/Logging In Users
9 Lectures 02:02:35

We will focus on building our login screen in this video.

Preview 16:25

With the login screen finished, we turn our attention to the registration screen. After, we will style both screens by adding a background and button backgrounds.

Preview 15:53

We finish both screens here by adding the ability to go back and forth between the login and registration screen.

Registration and login screen Pt.3

We turn our attention to saving users inside our Firebase. In this lecture, we get our event bus ready to make server calls to Firebase.

Registering a user Pt.1

With our event bus prepared we can effectively implement calls to our Firebase. This is the first time in the course were we communicate with Firebase. This video also showcases the power of our project structure. 

Registering a user Pt.2

After our app is capable of saving users, the next step is to allow those users to log on. We start and finish that feature inside this video.

Logging in a user

At this point our login and registration functions work however, it would be useful if the user could register and login using Facebook. We will begin this feature by first getting the necessary credentials.   

Facebook Login API Pt.1

Here, we focus on the server calls in order for our Facebook API to communicate with our Firebase. 

Facebook Login API Pt.2

With all the calls completed, we test the new feature and clean up some code in this lecture.

Facebook Login API Pt.3
Authenticating Users/Log Out Feature
5 Lectures 01:06:10

In this lecture, we focus on checking whether or not a user is logged into our app. We also create a splash screen in order to give the user something nice to look at as the check happens.

Preview 13:22

Bug Fix

A feature noticeably absent from our app is a log out option for the user. We build this feature in this video but don't compile our code until the end of the section. 

Logging a user out

We begin finishing all user account features which include the log in screen, registration screen, and finally the authentication check.

Finishing user accounts Pt.1

In this lecture, we compile all the code in this section as well as debug the code. 

Finishing user accounts Pt.2
Real Time Data Base
9 Lectures 02:18:38

Our next feature includes allowing a users to add a shopping list to the database. In this lecture, we get the necessary layouts as well as create the model for a shopping list. 

Adding a shopping list Pt.1

Continuing our shopping list feature, in this lecture we get our bus ready to handle the Firebase calls. 

Adding a shopping list Pt.2

In this lecture, we will successfully save a shopping list into our database and thus completing our shopping list feature.

Adding a shopping list Pt.3

The user can now successfully add a shopping list into our database but there is a problem. The user cannot see that shopping list inside the app! In this lecture, we focus on showing the added shopping lists by using a recycler-view with Firebase. 

Using a recycler-view with Firebase Pt.1

We will finish showing the users shopping list as well as see how to clean up recycler-view adapters when using Firebase.

Using a recycler-view with Firebase Pt.2

The next feature is allowing a user to delete a shopping list at will. In this lecture, we focus on preparing our event bus and getting the necessary layouts completed. 

Deleting a shopping list Pt.1

In order to complete the removing a shopping list feature, we will see how to properly use the Firebase remove value method.

Deleting a shopping list Pt.2

Our final feature for this section is allowing the user to sort their shopping lists by publish time, owner email, or shopping list name. We get our Android client side ready in this lecture.

Firebase sorting Pt.1

After the client side is prepared, we finish the feature and section by using the Firebase sort methods.

Firebase sorting Pt.2
Effective Firebase Structure/Updating Children/Challenges
17 Lectures 02:45:52

The next feature in the app will allow the user to change the name of a shopping list. This feature will be available inside another activity so the focus of this lecture is get that activity up and running.

Our new activity

With our new activity up and running, we can start implementing the change a list name feature. In this lecture, we focus on getting the necessary layouts and dialogs ready. 

Changing a list name Pt.1

In this lecture we see how to properly update data that already exist inside our Firebase database.   

Changing a list name Pt.2

We finish the change a list name feature in this lecture as well as see how to use a listener to get data without a recycler-view adapter. 

Changing a list name Pt.3

This is your first challenge in the course! The feature you will be working on is allowing the user to add an item to an individual shopping list. Make sure to look at the pdf/word document attached for the full details. 

Preview 02:17

This lecture starts the solution to your first challenge. Please watch only after you have completed or attempted Challenge #1.

Challenge #1: Solution Pt.1

This lecture finishes up the solution to challenge 1. 

Challenge #1: Solution Pt.2

For your second challenge, you will be displaying these shopping list items in the app. Be sure to refer to the attached pdf/word document for further instructions.  

Challenge #2: Displaying shopping list items

This lecture starts the solution to your second challenge. Please watch only after you have completed or attempted challenge #2.

Challenge #2: Solution Pt.1

This lecture finishes up the solution to challenge 2. 

Challenge #2: Solution Pt.2

For your next challenge of the section, there are going to be 2 parts. In the first part, you will focus on deleting a list item from the database and UI. In the second, you need to allow a user to change the list item name. Please be sure to read the word/pdf document for more details.

Challenge #3: Deleting an item/Changing an item name

This lecture starts the solution to your third challenge. Please watch only after you have completed or attempted challenge #3.

Challenge #3: Solution Pt.1

This lecture continues the solution for challenge #3. 

Challenge #3: Solution Pt.2

This lecture finishes up the solution to challenge 3.

Challenge #3: Solution Pt.3

There are 3 parts to your fourth challenge. First, you must allow the user the ability to delete the shopping list inside the ListDetails activity.  Then when a list is deleted, the shopping list items must be deleted as well. Finally, a user must be able to purchase a shopping list item. Please be sure to see the pdf/word document for a more detailed explanation. 

Challenge #4: Adding a bought by feature/Deleting a shopping list and items

This lecture starts the solution to your fourth challenge. Please watch only after you have completed or attempted challenge #4.

Challenge #4: Solution Pt.1

This lecture finishes up the solution to challenge 4.

Challenge #4: Solution Pt.2
Sharing with Firebase
7 Lectures 01:06:38

For the first part of your fifth challenge, you must show the user a list of all users inside our app. Then the user can either add or delete friends from that list. Please make sure to look at the pdf/word document for better details. 

Challenge #5a: Allowing users to add friends

This lecture starts the solution to your fifth challenge. Please watch only after you have completed or attempted challenge #5a.

Challenge #5a: Solution Pt.1

This lecture continues the solution for challenge #5a. 

Challenge #5a: Solution Pt.2

This lecture finishes the solution for challenge 5a.

Challenge #5a: Solution Pt.3

For challenge 5b, you must allow a user to share and not share their shopping list with friends. Please make sure to look at the pdf/word document for details.

Challenge #5b: Allowing users to share a shopping list

In the final challenge, you must show the shopping list to whom ever it is shared with. In addition anytime a shopping list is updated, you must insure the list is updated everywhere. Please make sure to look at the pdf/word document for further details. Don't give up, you are more then ready.

Final Challenge: Putting it all together

Thank you for taking our course and congratulations on finishing the last challenge! 

Congratulations/Thank you!
Extra: Firebase Security
2 Lectures 17:29

There are three components in Firebase security which are  authentication, validation, and authorization. We have already done authentication with our login/register flow. In this lecture, we take a look at validation.

Validation Pt.1

Validation Pt.2
About the Instructor
Carlos Valentin
4.2 Average rating
286 Reviews
5,987 Students
4 Courses
Android Developer

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! 

Beast Android Development
4.0 Average rating
240 Reviews
5,791 Students
3 Courses
Android Development

Beast Android Development is a brand dedicated to building high end Android Developers.  We achieve this by offering advanced courses that cover topics such as Android Design, APIs, Libraries, and so much more! 

We care immensely about the success of our students and are there to help you through the steep Android learning curve step by step. With our course we can guarantee you will become a beast android developer!