Skip to content

Firebase Console Guide

Praneeth edited this page Mar 17, 2023 · 1 revision

This document is made as a guide for viewing and customising the Firebase project(s) of Oppia-Android. It is recommended to fully read this doc before making any changes to the Firebase project. If you only want to view the Firebase console then this doc can help you in viewing exactly the thing that you want to see. It must also be noted that appropriate permissions are required for viewing/editing anything in the console. For permissions, please contact [email protected].

Table of Contents

Viewing the Console

  • Go to the Firebase Console -> Log in to your gmail account (if you haven't) -> Select Oppia Android Dev Project.
  • You will be welcomed by the following screen :

Crashlytics

  • Scroll down the left nav bar and select Crashlytics. You will see the following dashboard :
  • A --> Filter Option : You can filter out crashes and non-fatal exceptions through it.
  • B --> Crash-free stats : Give you an insight to the amount of users which are experiencing crash free experience.
  • C --> Event trends : Give you the information regarding the reported exceptions and the users affected by them.
  • D --> Issues : Similar reported exceptions are clubbed together to form issues which can be marked as solved once fixed. Once we click on any one of these issues, it leads us to the following :
  • A --> Events by version : This segment tells the user about the day-wise number of event occurrences in form of a graph. This graph may have multiple lines based on the number of versions of the application.
  • B --> Device Info : It tells us about the devices in which that exception has occurred. Multiple devices are differentiated on the basis of the number of event occurrences. Other info like the OS and the device states are also available.
  • C --> Session Summary : This segment contains the crash reports of each occurrence of the event. Things like stack traces and device data are present which tell us a lot about the crashes. Keys and Logs are only available if we log them through APIs.

Analytics

  • Scroll down the nav bar a bit more and select Dashboard under the Analytics Section. You will see :
  • The dashboard consists of the following segments :
  1. Daily active users
  2. Users in last 30 mins
  3. Daily user engagement
  4. Key events
  5. Stability statistics
  6. Audience statistics
  7. User retention stats
  • We can filter out the results that is displayed on the dashboard by using the filter option on the top left. We can filter the values using user properties like device model, OS, app-version, etc.
  • We can also view these things under their own specific dashboards. For example the event dashboard looks like:
  • This dashboard consists of all the predefined events along with the custom logged events as you can see in the image above. We can see detailed stats related to an event by clicking on its event name.

DebugView

  • DebugView enables you to see the raw event data logged by your app on development devices in near real-time.
  • To run this, you must have ADB set up in your system.
  • To enable DebugView, write adb shell setprop debug.firebase.analytics.app org.oppia.android in your command line while the app runs on your emulator/device.
  • Now as you play around with the app you'll see various events being logged to the console. To get more details about an event, just click on it and you'll see something like this :
  • In the above case, we can see that the logged event : OPEN_LESSONS_TAB has custom parameters like priority, timestamp and topicId along with predefined Firebase event parameters.
  • To get more specific details about the logged event, you can click on its parameters and see their values as well.
  • To disable DebugView, write adb shell setprop debug.firebase.analytics.app .none. in your command line.

Funnels

  • They are used to visualize and optimize the completion rate of a series of steps (events) in the app.
  • You can filter out the results (from the top) on the basis of user properties like app-version, device model, OS-version, etc.
  • To set up funnels, follow these steps :
  1. In Analytics, navigate to your app.
  2. Click Funnels.
  3. Click NEW FUNNEL.
  4. Enter a name and description for the funnel.
  5. Select the first two events you want to use as steps in the funnel.
  6. Click ADD ANOTHER EVENT for each additional step, and select an event.
  7. Click CREATE.

Adding Custom Parameters

  • Go to the Events section of Analytics and pick an event you want to add custom parameters for.
  • Move the cursor to the right hand side of that event and click on the three dots and then select 'Edit Parameter Reporting'.
  • You will be shown a dialog box like this :
  • Click ADD on any of the parameters that you want to add --> select if you want it to be a text based or a number based parameter and click SAVE. Voila! You just added a custom parameter.
  • It may be noted that for custom events, we can provide custom parameters via code and then integrate them here.

Conversions

  • In Analytics, the most important events are known as Conversions.
  • We can mark any of the event as a conversion event just by going to the Events -> toggling on the conversion button on the right side of the event that you want to mark as conversion.
  • A summary of conversion events are shown on the main Analytics Dashboard, while other details are available in the Conversions sub-section.

Your own Firebase Project

Setting it up

  • Go to the Firebase Console -> Log in to your gmail account -> Click on "Add Project"
  • Enter your project name -> Enable/Disabe Google Analytics and move forward.
  • If you enabled Google Analytics then accept the terms and select a project location and click create project.
  • If you disabled Google Analytics then simply click on create project.
  • Click continue on completion of the progress bar and the Project Console (like the one shown above) will open.

App Registration

  • Once your Project Console opens up, click on 'Add an App' from the centre. This will open up :
  • Add the required info and click on Register App.
  • Then in the next step you would be required to add a config file to your repo. In our case we have to add it under our app module.
  • Then click next, add the said plugins (if not already added).
  • In the next step build & run the app so that the Firebase servers sync to it and click on Go to Console.
  • You can check the details of your project and the apps registered to it by clicking on the settings button (present on the top of the nav bar) and then selecting 'Project settings' from it. A new page will open up with all the necessary details.

View events in the Android Studio debug log

You can enable verbose logging to monitor logging of events by the SDK to help verify that events are being logged properly. This includes both automatically and manually logged events.

You can enable verbose logging with a series of adb commands:

  • adb shell setprop log.tag.FA VERBOSE
  • adb shell setprop log.tag.FA-SVC VERBOSE
  • adb logcat -v time -s FA FA-SVC

This command displays your events in the Android Studio logcat, helping you immediately verify that events are being sent.

Clone this wiki locally