From 2693ee674d084ab09aabec987e63284132cedd93 Mon Sep 17 00:00:00 2001 From: Gourav Khunger Date: Sat, 12 Mar 2022 00:34:31 +0530 Subject: [PATCH] Add firebase features cloud messaging, crashlytics, analytics --- .gitignore | 2 ++ README.md | 13 ++++++++----- app/build.gradle.kts | 9 ++++++++- app/src/main/AndroidManifest.xml | 10 ++++++++++ app/src/main/res/drawable/ic_notification.xml | 10 ++++++++++ build.gradle.kts | 2 ++ 6 files changed, 40 insertions(+), 6 deletions(-) create mode 100644 app/src/main/res/drawable/ic_notification.xml diff --git a/.gitignore b/.gitignore index 643528f..bbbe62a 100644 --- a/.gitignore +++ b/.gitignore @@ -86,3 +86,5 @@ lint/generated/ lint/outputs/ lint/tmp/ # lint/reports/ + +google-services.json \ No newline at end of file diff --git a/README.md b/README.md index 5128899..27c780d 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,20 @@ # QuotesApp -QuotesApp Logo +QuotesApp Logo A beautiful Quotes App where you can read and save quotes. This repository contains source code of a Quotes app, which helps you stay motivated by providing best picked quotes stated by famous personalities. This app uses [zen quotes](https://zenquotes.io) api, for retrieving quotes. -[Download](https://github.com/GouravKhunger/QuotesApp/releases/latest) the latest `apk` file of this project and do provide feedback 😀 +[Download](http://quotes.gouravkhunger.xyz) the latest `apk` file of this project and do provide feedback 😀 # Screenshots Here are some screenshots from the app: -| ![first](https://raw.githubusercontent.com/GouravKhunger/QuotesApp/main/images/one.png) | ![second](https://raw.githubusercontent.com/GouravKhunger/QuotesApp/main/images/two.png) | +| ![first](https://raw.githubusercontent.com/gouravkhunger/QuotesApp/main/images/one.png) | ![second](https://raw.githubusercontent.com/gouravkhunger/QuotesApp/main/images/two.png) | |---------------------------------|---------------------------------| -| ![third](https://raw.githubusercontent.com/GouravKhunger/QuotesApp/main/images/three.png) | ![fourth](https://raw.githubusercontent.com/GouravKhunger/QuotesApp/main/images/four.png) | +| ![third](https://raw.githubusercontent.com/gouravkhunger/QuotesApp/main/images/three.png) | ![fourth](https://raw.githubusercontent.com/gouravkhunger/QuotesApp/main/images/four.png) | # Details [Watch the demo video on Youtube](https://youtu.be/9Kl6WDmTK8g) @@ -25,8 +25,11 @@ cooler. Long pressing a quote in your Bookmarks copies that quote to the clipboard... More features along the way 🚀. +# Development Pre-requisites +Please create a firebase project and add the `google-services.json` file inside the `app/` directory. + # Have awesome ideas? -Feel free to [Create an issue](https://github.com/GouravKhunger/QuotesApp/issues/new) +Feel free to [Create an issue](https://github.com/gouravkhunger/QuotesApp/issues/new) if you think you have a great idea that could be implmented in the app! I hope you like the app :) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index d909c3a..800dacc 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -5,6 +5,8 @@ plugins { id("androidx.navigation.safeargs.kotlin") id("kotlin-android-extensions") id("dagger.hilt.android.plugin") + id("com.google.gms.google-services") + id("com.google.firebase.crashlytics") } android { @@ -37,7 +39,6 @@ android { } dependencies { - implementation("androidx.core:core-ktx:1.7.0") implementation("androidx.appcompat:appcompat:1.4.1") implementation("com.google.android.material:material:1.5.0") @@ -74,6 +75,12 @@ dependencies { implementation("androidx.navigation:navigation-fragment-ktx:2.4.1") implementation("androidx.navigation:navigation-ui-ktx:2.4.1") + // Firebase + implementation(platform("com.google.firebase:firebase-bom:29.1.0")) + implementation("com.google.firebase:firebase-analytics-ktx") + implementation("com.google.firebase:firebase-crashlytics-ktx") + implementation("com.google.firebase:firebase-messaging-ktx") + // App Updater implementation("com.github.javiersantos:AppUpdater:2.7") diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f1801a3..c4ca7e2 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -39,6 +39,16 @@ android:supportsRtl="true" android:theme="@style/SplashScreenTheme"> + + + + diff --git a/app/src/main/res/drawable/ic_notification.xml b/app/src/main/res/drawable/ic_notification.xml new file mode 100644 index 0000000..21cb88d --- /dev/null +++ b/app/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,10 @@ + + + diff --git a/build.gradle.kts b/build.gradle.kts index 79c1376..1053571 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,6 +13,8 @@ buildscript { classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") classpath("androidx.navigation:navigation-safe-args-gradle-plugin:2.4.1") classpath("com.google.dagger:hilt-android-gradle-plugin:$hiltVersion") + classpath("com.google.gms:google-services:4.3.10") + classpath("com.google.firebase:firebase-crashlytics-gradle:2.8.1") // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files