learn android app development for free


In this article, I’ll show you how you adding firebase to android app. We’ll discuss the possible options and recommended ways of it. Apart from this, I will tell you preliminary information for Firebase integration. For doing that, we’ll create a sample app and will add the firebase into it. So let’s started


The following preliminary information that required for Firebase

  • One Google account
  • One real device or emulator for running the sample app
  • The latest Android Studio version (1.5 or later)
  • The app must use gradle 4.1 or later
There are two options for adding firebase into your project.
  • Firebase Assistant in Android Studio
    • Prebuild tool available in Android Studio
    • Using Assistant you can connect existing project or create new ones for you.
    • Assistant is automatically added and install all necessary dependencies
  • Add Firebase to your app via a firebase console manually.
    • This way you have to do all operations manually

Note – Google recommended manual way to add firebase in your app.

Create a project in Firebase console

Let’s open web browse and open firebase console. Click on add project -> enter the project name -> If you need analytics then check this option otherwise you can uncheck it. Finally, click on create a project.

Go to add firebase into android platform

Open this project and click on android icon, Then below window pop up. The big thing here is the package name. This package name has to match android app package name.

The next step is to download google-services.json file

You have to download this file and put into your app

Put this json file into app folder in your app

It’s a really important step. So let’s open your app folder -> navigate app folder – paste inside the app google-services.json. After adding it click on next.

Create a project in Android Studio with the same package name.

Let’s move to Android Studio create a new project with package name com.sampleapp. Now paste the google-services.json file in your app folder. just like below screenshot.

Add firebase SDK
Modify project-level build.gradle in Android Studio and add SDK classpath
  dependencies {
    // Add this line
    classpath 'com.google.gms:google-services:4.3.2'
Open the app-level.gradle file. (<project>/<app-module>/build.gradle)
// Add this line
apply plugin: 'com.google.gms.google-services'

After modifying these files sync the project. Now your firebase setup is used. Firebase provides so many libraries that we’ll learn in the coming tutorial.

Learn our firebase android tutorial series


In this article, I’m sharing a well-managed plan with you. That helps you learn android app development within 10 days. This is a basic training plan is a collection of android app development tutorial. I will assure you will learn android development within 10 days.

I have prepared an assignment for you for each topic. So please do assignment properly for becoming a better android developer.

I tried to make a best android app development course for you. Let’s start this training plan


  • CORE JAVA – Before starting this training plan you must have a good knowledge of core JAVA. You should hand on OOP’s concept.
  • Android Studio Setup – Android Studio should install and configure in your machine. Android Studio will take some time for downloading SDK and System. So please do it before moving ahead. Install Android Studio in your machine.

Day 1:-

First day of learning, you have full energy and focus on first day to I stretched little bit of first day plan

1. What is android

The first day you read about android fundamental. Android Basic, History of Android, Android OS Working Pattern.

References Article – What is Android

2. Anatomy of android

Understand the anatomy of android. How APK build etc. So read below link

  • Android basics
  • Android project structure

References Article – Anatomy of Android

3. Building a user Interface

Now time to understand UI part in android. Let’s learn deep about android layout UI complement. Following are the most commonly used UI component in android applications.

  • TextView
  • EditText
  • AutoCompleteTextView
  • Button
  • ImageButton
  • ToggleButton
  • CheckBox
  • RadioButton
  • RadioGroup
  • ProgressBar
  • Spinner
  • TimePicker
  • DatePicker
  • SeekBar
  • AlertDialog
  • Switch
  • RatingBar

Working with Android Layout such as LinearLayout, RelativeLayout, ConstraintLayout

  • Learning XML Code for Android Linear Layout
  • Creating A Graphical XML Layout
  • Learning Composite Layout

References ArticleDesing Layout in Android

4. Understanding activity life cycle

  • Pausing and resuming activity
  • Stopping and restarting activity
  • Recreating an Activity

References Article – Understand Activity LifeCycle

  • Create a Login and signup page.
  • Create a home page with a creative view.
  • Populate list employee list with thumb image, name, designation, email id, skype link button using RecyclerView.

Day 2:-

1. Intents

What is Intent and Intent Filter, How does work? Understand the role of Intent in Android

  • Understanding the usage of intents.
  • Understanding the usage of intent filters
  • Difference between implicit & explicit intents.
  • Passing and receiving data through intents.

References ArticleUnderstand the Intent and Intent Filter


  • Connect the above assignment activities(signup, login, home page)
  • Pass the data from login page to home page and display it on homepage.(username, email etc.)

Day 3:-

1. Fragments

Now we will learn about fragment, lifecycle of fragment and how to build flexible UI using fragment

  • Fragments Life cycle
  • Building flexible UI using fragments.
  • Communication between fragments.

References Article Basic of Fragments

2. Action Bar:-

Action Bar is important component in android app development. Using it we will manage navigation, menu and user flow.

  • Setting Up the Action Bar
  • Adding Action Buttons
  • Styling the Action Bar
  • Overlaying the Action Bar
  • Create a profile activity having 2 fragments. On the top, activity has two buttons- one to show the personal information in a fragment and other shows the professional information. Change the fragments according to button click.
  • In profile activity action bar, add a menu with items- Edit profile, Settings, Logout, etc.

Day 4:-

1. Android Advanced UI

For making beautiful and creative UI for android application. Styles and themes play an important role to beautify and making creative user interface in android.

2. Supporting Different Languages

In Android app development, apps should be kept culture-specific resource. So that resource to be translated to the language based on current locale. Understand how to build multi language supported app in Android

References ArticlesAndroid multi language support apps example

3. Supporting different screens

App UI should support different screens is big challenge for android developer. So hand on multi screen support

References Articles

  • Create login and signup screen to locale(Language).
  • Support for all devices (Tablet and phone).

Day 5:-

1. Android Storage and network access, Asynchronous processing

  • Android SQLite database and content provider

References Articles – SQLite article

  • Android background processing with the Handlers, AsyncTask and loaders.(3hrs)

References Articles – Background Job

  • Download and image from the internet in background Using Asynctask and display it on screen.

Day 6:-

1. Android XML processing using XMLPullParser

  • Understanding the structure of XML.

2. JSON parsing in android

In this part we try to learn, How to communicate android app with remote server. Todays Retrofit is most commonly library calling REST API in android.

References Articles

3. Animation in android

  • Property animation
  • View Animation
  • Drawable Animation

References ArticlesAnimation Demo

Assignments:- (3 hrs)
  • Create a REST API for parsing JSON data.
  • Create a SOAP API for parsing XML data.
  • Use the different animations on different types of views.

Day 7-

Today, We learn all data storage tips and tool in android.

1. Data storage options in android

  • Shared Preferences.
  • SQLite database.
  • Internal and external storage.
  • Room persistence library

References Articles

  • Manage login session on app using shared preferences.
  • Download data from server to SD card(Image, Audio, Video, etc.)
  • Create an activity so save employee info in SQLite database and populate a listview from database in another activity.

Day 8:-

1. Android location service

References ArticlesLocation Services Demo App

2. Working with Map

  • Working with google maps API v2

References Articles

  • 1. Create an activity which gets current location(longitude, latitude) and displays it on button click.
  • Google maps on button click and displays specific location pin on it.

Day 9

1. Scheduling of tasks in Android with the Alarm Manager and the Job Scheduler

References Articles

2. Android Broadcast Receiver

References Articles

3. Android Notifications

References ArticlesAndroid Notifications

5. Android memory and performance optimization

References ArticlesAndroid Application Optimization

  • Create scheduled repetitive toast with the help of Alarm manager
  • Give a notification on battery low event using broadcast receiver.

2. Sensors and Touch in Android

  • Camera API and Camera2 in android
  • Android Sensor
  • Handling single and multi-touch on Android
  • Android Gestures

Day 11

1. Android Expert Programming Topics

  • Handling Media with Android
  • Android Cloud to Device Messaging and Google Cloud Messaging
  • Android Calendar API
  • Work with Sync Adapter
  • Signing Your App
  • Distribution


This android app development course is complete a practical guide. Please do each assignment properly. I promise you to complete this android app development course you become a better android developer In few days.