kaushiknsanji / firestore-friendly-eats-android

Android App done as part of Google Codelab "Cloud Firestore Android"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Friendly Eats - Cloud Firestore Android Codelab

Friendly Eats app built by following the instructions detailed in the Google Codelab "Cloud Firestore Android Codelab". Original starter code by Google for this codelab can be referred here. One may refer the completed sample code by Google over here which has solution written in both Java and Kotlin using Jetpack Navigation, that which is not used in this codelab.

What one will learn

  • Use Firebase CLI and Firebase Emulator Suite to develop and test Android App locally.
  • Read and write data to Firestore from an Android app, by making use of-
    • Collections
    • Documents
    • Subcollections
    • Transactions
  • Listen to realtime changes in Firestore database.
  • Sorting and filtering with complex Firestore queries.
  • Use Firebase Authentication and security rules to secure Firestore data.
  • Index complex Firestore queries for performance.

Getting Started

  • Android Studio 4.0 or higher with updated SDK and Gradle.
  • Android device or emulator with Android 4.1+.
  • Java version 8 or higher.
  • Node.js version 10 or higher.

Branches in this Repository

  • starter-code
    • This is the Starter code for the codelab.
    • In comparison to the original repository, this repository contains some modifications and corrections-
      • Moved all dependency versions to project gradle for centralized management and updated the same to their latest versions.
      • Applied Lint corrections in codes and layouts related to chosen sdk versions.
      • Applied compatible changes to deprecated code.
      • Used Android ViewBinding.
      • Targeted Java version 8 and used lambda expressions wherever possible.
      • Configured Glide to be used via AppGlideModule.
      • Used constants for Firestore Document data field names and Collection names, and other attributes used in a Firestore Query - commit.
      • Added code comments for better understanding of pre-written code - commit.
      • Removed a line that says "ite" in strings.xml file - commit.
      • Made eligible class members final - commit.
      • Fixed the issue "Order by clause cannot contain a field with an equality filter price" - commit.
  • master
    • This contains the Solution for the codelab.
    • Includes automated app signing with keystore in order to test the release version of the App with Production Firestore database.

About

Android App done as part of Google Codelab "Cloud Firestore Android"

License:Apache License 2.0


Languages

Language:Java 99.0%Language:Shell 1.0%