Build a Complete Android App with Firebase – Full Course with Kotlin

Wordpress sites

In this course, you'll build an Android app in Kotlin which allows users to update their status using only emoji 😇🐼❤️. The app combines various Firebase services (Authentication, Cloud Functions, and Firestore) to allow users to update and view emoji-only statuses. The user is able to create or sign in to their account with Google.

➤ Published app:
➤ Kotlin Code in Github:
➤ JavaScript Code in Github:

🔗 Follow Rahul on Twitter:
🔗 Follow Rahul on YouTube:

Fix to allow other kinds of emoji in the EditText:

Helpful documentation
➤ Android guide for Firebase authentication:
➤ Cloud function trigger when a user authenticates:
➤ Working with Firestore:
➤ Read about Android and emojis (Unicode):

⭐️ Course Contents ⭐️
⌨️ (00:00) Intro
⌨️ (01:07) App architecture
⌨️ (09:05) Firebase Authentication logic
⌨️ (29:25) User sign up Cloud Function
⌨️ (42:31) Display user emoji list
⌨️ (57:13) Update emoji status
⌨️ (1:07:15) Restrict input to emoji

Learn to code for free and get a developer job:

Read hundreds of articles on programming:

And subscribe for new videos on technology every day:

29 thoughts on “Build a Complete Android App with Firebase – Full Course with Kotlin”

  1. Now I can build an app and show off in front of my computer science engineer friends. Thanks to you guys

    1. @Rahul Pandey Hey Rahul, I hope you can respond. One thing you notice is that when you logout of the app and then log in, instead of asking you to choose which account, it just uses the previously logged in account, how to make it so that it asks for which account you want to use every time?

  2. Eugene Fiifi Adams

    Good work Pandey. Please do java version of same tutorial?
    Thank you for your support.

    1. thanks Eugene, I’ve moved completely to Kotlin, but happy to help if you do this in Java

  3. hello! this might seem like a stupid question, but what program did you use to build the app and run it? Does it have to be the Android Studio?

  4. 39:49 I can’t deploy because bunch of error occur such as

    4:23 error Strings must use doublequote quotes
    5:8 error There should be no space after ‘{‘ object-curly-spacing
    5:9 error ‘user’ is assigned a value but never used no-unused-vars
    5:13 error There should be no space before ‘}’ object-curly-spacing
    12:1 error Expected indentation of 2 spaces but found 3 indent”

    But my code is same as video :'(

    1. Traveling in Time

      Hey, I just found one trick to solve the problem.
      first open .eslintric.js in your functions folder. And remove code from “extends”:”eslentric-recommended” to rules and below one too. After doing this my code is running same as video.
      I think these rules are not necessary to run our project successfully. If have anything to add, please do.
      thank you

  5. Michał Guśpiel

    Loved the tutorial, now I’m laid off for 3 weeks so I’m about to make my own bootcamp of making online apps for android, what are other useful services like Firebase worth learning?

  6. 16:36 i can see the strin value in generated folder, but still in the activity R.string.default_web_client_id is in red. what did I miss?

  7. tanks a lot man!!!
    I added an activity for some extra fun and when I go back to the main activity the app crushes
    been doing some search online and it says something about the recycler review

    thanks again

  8. if you get this error : Unresolved reference: default_web_client_id
    follow this solution
    replace the version of google-services in project-level build.gradle to 4.3.5
    Upgrading the version from 4.3.5 to anything higher than that makes Android Studio unable to detect the generated values.xml file.

  9. Adrian Margarit

    Love the tutorial! I have a question, if startActivityForResult is deprecated, what workaround to use?

  10. Its very cool tutorial! But please explain what we can do with “startActivityForResult is deprecated”??

Comments are closed.