Book Image

Mastering Firebase for Android Development

By : Ashok Kumar S
Book Image

Mastering Firebase for Android Development

By: Ashok Kumar S

Overview of this book

Firebase offers a wide spectrum of tools and services to help you develop high-quality apps in a short period of time. It also allows you to build web and mobile apps quickly without managing the infrastructure.Mastering Firebase for Android Development takes you through the complete toolchain of Firebase,including the latest tools announced in Google IO 2018 such as Firebase ML-Kit, FireStore, and Firebase Predictions. The book begins by teaching you to configure your development environment with Firebase and set up a different structure for a Firebase real-time database. As you make your way through the chapters, you’ll establish the authentication feature in Android and explore email and phone authentication for managing the on-boarding of users. You’ll be taken through topics on Firebase crash reporting, Firebase functions, Firebase Cloud, Firebase Hosting, and Cloud Messaging for push notifications and explore other key areas in depth. In the concluding chapters, you will learn to use Firebase Test Lab to test your application before using Firebase Performance Monitoring to trace performance setbacks. By the end of the book, you will be well equipped with the Firebase ecosystem, which will help you find solutions to your common application development challenges.
Table of Contents (23 chapters)
Title Page
Copyright and Credits
Packt Upsell
Application Usage Measuring and Notification, Firebase Analytics, and Cloud Messaging
Bringing Everyone on the Same Page, Firebase Invites, and Firebase App Indexing
Making a Monetary Impact and Firebase AdMob and AdWords
Flexible NoSQL and Cloud Firestore
Analytics Data, Clairvoyant, Firebase Predictions

Connecting Firebase cloud functions

We will be serving dynamic content using cloud functions, which also means the website that we hosted in the Firebase hosting service is not going to be static content anymore. Let's deep dive into hosting a dynamic web application. 

Create a new project and initialize Hosting and functions through the Terminal as shown here:

firebase init hosting

The following screenshot shows a successful Hosting initialization:

Now, initialize Firebase functions with the following command:

$firebase init functions

After successful node initialization, let's install the express server framework in the functions directory:

$cd functions
$npm i express --save

The following screenshot shows how to install additional node modules in the functions directory:

Now, you can go to the root directory of the project and open the project in your favorite code editor. You will notice two directories: functions and public. Here, public is the static web application directory, whereas functions...