From 2181cdbaa05058098a458ef7cdfc654c7a577daf Mon Sep 17 00:00:00 2001 From: Kirill Kamakin Date: Tue, 22 Nov 2022 19:45:35 +0100 Subject: [PATCH 1/2] Bump version to 0.3.7 --- app/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 728d660..f92945a 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -17,8 +17,8 @@ plugins { android { defaultConfig { applicationId = "gq.kirmanak.mealient" - versionCode = 21 - versionName = "0.3.6" + versionCode = 22 + versionName = "0.3.7" } signingConfigs { From d62ce1a74ed3e5baa65d16967a566c10ce75e11b Mon Sep 17 00:00:00 2001 From: Kirill Kamakin Date: Tue, 22 Nov 2022 19:50:29 +0100 Subject: [PATCH 2/2] Remove Google Analytics and Crashlytics --- app/build.gradle.kts | 7 --- app/google-services.json | 47 ------------------- app/src/main/java/gq/kirmanak/mealient/App.kt | 5 -- .../mealient/data/analytics/Analytics.kt | 6 --- .../mealient/data/analytics/AnalyticsImpl.kt | 21 --------- .../java/gq/kirmanak/mealient/di/AppModule.kt | 18 ------- .../data/analytics/AnalyticsImplTest.kt | 38 --------------- build.gradle.kts | 2 - gradle/libs.versions.toml | 13 ----- 9 files changed, 157 deletions(-) delete mode 100644 app/google-services.json delete mode 100644 app/src/main/java/gq/kirmanak/mealient/data/analytics/Analytics.kt delete mode 100644 app/src/main/java/gq/kirmanak/mealient/data/analytics/AnalyticsImpl.kt delete mode 100644 app/src/test/java/gq/kirmanak/mealient/data/analytics/AnalyticsImplTest.kt diff --git a/app/build.gradle.kts b/app/build.gradle.kts index f92945a..7ee773a 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,8 +8,6 @@ plugins { id("kotlin-kapt") id("androidx.navigation.safeargs.kotlin") id("dagger.hilt.android.plugin") - id("com.google.gms.google-services") - id("com.google.firebase.crashlytics") alias(libs.plugins.ksp) alias(libs.plugins.appsweep) } @@ -41,7 +39,6 @@ android { buildTypes { getByName("debug") { - ext["enableCrashlytics"] = false enableUnitTestCoverage = true enableAndroidTestCoverage = true } @@ -112,10 +109,6 @@ dependencies { implementation(libs.androidx.datastore.preferences) - implementation(platform(libs.google.firebase.bom)) - implementation(libs.google.firebase.analyticsKtx) - implementation(libs.google.firebase.crashlyticsKtx) - testImplementation(libs.junit) implementation(libs.jetbrains.kotlinx.coroutinesAndroid) diff --git a/app/google-services.json b/app/google-services.json deleted file mode 100644 index b15ca29..0000000 --- a/app/google-services.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "project_info": { - "project_number": "884522665560", - "project_id": "mealient", - "storage_bucket": "mealient.appspot.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:884522665560:android:929b43ee82b13a95f3ac2d", - "android_client_info": { - "package_name": "gq.kirmanak.mealient" - } - }, - "oauth_client": [ - { - "client_id": "884522665560-frdmmbdqh789nmdashj3fu4alk67pvjr.apps.googleusercontent.com", - "client_type": 1, - "android_info": { - "package_name": "gq.kirmanak.mealient", - "certificate_hash": "c6b9c7bcf7148e9c92a88f0992d5175e4144ca2b" - } - }, - { - "client_id": "884522665560-hgumk6mcc0tq32kuhb71d7jbt4ml5ifd.apps.googleusercontent.com", - "client_type": 3 - } - ], - "api_key": [ - { - "current_key": "AIzaSyChGzjbOrF_aPwenmI85-sbV8zV_aSG6DY" - } - ], - "services": { - "appinvite_service": { - "other_platform_oauth_client": [ - { - "client_id": "884522665560-hgumk6mcc0tq32kuhb71d7jbt4ml5ifd.apps.googleusercontent.com", - "client_type": 3 - } - ] - } - } - } - ], - "configuration_version": "1" -} \ No newline at end of file diff --git a/app/src/main/java/gq/kirmanak/mealient/App.kt b/app/src/main/java/gq/kirmanak/mealient/App.kt index fbd1c92..090b6c6 100644 --- a/app/src/main/java/gq/kirmanak/mealient/App.kt +++ b/app/src/main/java/gq/kirmanak/mealient/App.kt @@ -4,7 +4,6 @@ import android.app.Application import com.google.android.material.color.DynamicColors import dagger.hilt.android.HiltAndroidApp import gq.kirmanak.mealient.architecture.configuration.BuildConfiguration -import gq.kirmanak.mealient.data.analytics.Analytics import gq.kirmanak.mealient.logging.Logger import javax.inject.Inject @@ -17,13 +16,9 @@ class App : Application() { @Inject lateinit var buildConfiguration: BuildConfiguration - @Inject - lateinit var analytics: Analytics - override fun onCreate() { super.onCreate() logger.v { "onCreate() called" } - analytics.setIsEnabled(!buildConfiguration.isDebug()) DynamicColors.applyToActivitiesIfAvailable(this) } } diff --git a/app/src/main/java/gq/kirmanak/mealient/data/analytics/Analytics.kt b/app/src/main/java/gq/kirmanak/mealient/data/analytics/Analytics.kt deleted file mode 100644 index 351ae24..0000000 --- a/app/src/main/java/gq/kirmanak/mealient/data/analytics/Analytics.kt +++ /dev/null @@ -1,6 +0,0 @@ -package gq.kirmanak.mealient.data.analytics - -interface Analytics { - - fun setIsEnabled(enabled: Boolean) -} \ No newline at end of file diff --git a/app/src/main/java/gq/kirmanak/mealient/data/analytics/AnalyticsImpl.kt b/app/src/main/java/gq/kirmanak/mealient/data/analytics/AnalyticsImpl.kt deleted file mode 100644 index 40daa5e..0000000 --- a/app/src/main/java/gq/kirmanak/mealient/data/analytics/AnalyticsImpl.kt +++ /dev/null @@ -1,21 +0,0 @@ -package gq.kirmanak.mealient.data.analytics - -import com.google.firebase.analytics.FirebaseAnalytics -import com.google.firebase.crashlytics.FirebaseCrashlytics -import gq.kirmanak.mealient.logging.Logger -import javax.inject.Inject -import javax.inject.Singleton - -@Singleton -class AnalyticsImpl @Inject constructor( - private val firebaseAnalytics: FirebaseAnalytics, - private val firebaseCrashlytics: FirebaseCrashlytics, - private val logger: Logger, -) : Analytics { - - override fun setIsEnabled(enabled: Boolean) { - logger.v { "setIsEnabled() called with: enabled = $enabled" } - firebaseAnalytics.setAnalyticsCollectionEnabled(enabled) - firebaseCrashlytics.setCrashlyticsCollectionEnabled(enabled) - } -} \ No newline at end of file diff --git a/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt b/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt index aef7ee1..8b3a7f7 100644 --- a/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt +++ b/app/src/main/java/gq/kirmanak/mealient/di/AppModule.kt @@ -5,16 +5,12 @@ import androidx.datastore.core.DataStore import androidx.datastore.preferences.core.PreferenceDataStoreFactory import androidx.datastore.preferences.core.Preferences import androidx.datastore.preferences.preferencesDataStoreFile -import com.google.firebase.analytics.FirebaseAnalytics -import com.google.firebase.crashlytics.FirebaseCrashlytics import dagger.Binds import dagger.Module import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.components.SingletonComponent -import gq.kirmanak.mealient.data.analytics.Analytics -import gq.kirmanak.mealient.data.analytics.AnalyticsImpl import gq.kirmanak.mealient.data.storage.PreferencesStorage import gq.kirmanak.mealient.data.storage.PreferencesStorageImpl import javax.inject.Singleton @@ -28,23 +24,9 @@ interface AppModule { @Singleton fun provideDataStore(@ApplicationContext context: Context): DataStore = PreferenceDataStoreFactory.create { context.preferencesDataStoreFile("settings") } - - @Provides - @Singleton - fun provideFirebaseAnalytics(@ApplicationContext context: Context): FirebaseAnalytics = - FirebaseAnalytics.getInstance(context) - - @Provides - @Singleton - fun provideFirebaseCrashlytics(): FirebaseCrashlytics = - FirebaseCrashlytics.getInstance() } @Binds @Singleton fun bindPreferencesStorage(preferencesStorage: PreferencesStorageImpl): PreferencesStorage - - @Binds - @Singleton - fun bindAnalytics(analyticsImpl: AnalyticsImpl): Analytics } \ No newline at end of file diff --git a/app/src/test/java/gq/kirmanak/mealient/data/analytics/AnalyticsImplTest.kt b/app/src/test/java/gq/kirmanak/mealient/data/analytics/AnalyticsImplTest.kt deleted file mode 100644 index 4cde2ae..0000000 --- a/app/src/test/java/gq/kirmanak/mealient/data/analytics/AnalyticsImplTest.kt +++ /dev/null @@ -1,38 +0,0 @@ -package gq.kirmanak.mealient.data.analytics - -import com.google.firebase.analytics.FirebaseAnalytics -import com.google.firebase.crashlytics.FirebaseCrashlytics -import gq.kirmanak.mealient.test.BaseUnitTest -import io.mockk.impl.annotations.MockK -import io.mockk.verify -import org.junit.Before -import org.junit.Test - -class AnalyticsImplTest : BaseUnitTest() { - - @MockK(relaxUnitFun = true) - lateinit var firebaseAnalytics: FirebaseAnalytics - - @MockK(relaxUnitFun = true) - lateinit var firebaseCrashlytics: FirebaseCrashlytics - - lateinit var subject: Analytics - - @Before - override fun setUp() { - super.setUp() - subject = AnalyticsImpl(firebaseAnalytics, firebaseCrashlytics, logger) - } - - @Test - fun `when setIsEnabled expect call to analytics`() { - subject.setIsEnabled(true) - verify { firebaseAnalytics.setAnalyticsCollectionEnabled(eq(true)) } - } - - @Test - fun `when setIsEnabled expect call to crashlytics`() { - subject.setIsEnabled(true) - verify { firebaseCrashlytics.setCrashlyticsCollectionEnabled(eq(true)) } - } -} \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index 2bf2e17..86b9a66 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,8 +7,6 @@ buildscript { dependencies { classpath(libs.android.gradlePlugin) - classpath(libs.google.servicesPlugin) - classpath(libs.google.firebase.crashlyticsPlugin) classpath(libs.google.dagger.hiltPlugin) classpath(libs.jetbrains.kotlinPlugin) classpath(libs.jetbrains.serializationPlugin) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 8478bd2..3ce76a0 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,10 +1,6 @@ [versions] # https://maven.google.com/web/index.html?q=com.android.tools.build#com.android.tools.build:gradle androidGradlePlugin = "7.3.1" -# https://developers.google.com/android/guides/google-services-plugin -googleServicesPlugin = "4.3.14" -# https://mvnrepository.com/artifact/com.google.firebase/firebase-crashlytics-gradle -firebaseCrashlytics = "2.9.2" # https://kotlinlang.org/docs/gradle.html kotlin = "1.7.20" # https://developer.android.com/jetpack/androidx/releases/navigation @@ -59,8 +55,6 @@ viewBindingDelegate = "1.5.6" datastore = "1.0.0" # https://developer.android.com/jetpack/androidx/releases/security security = "1.0.0" -# https://mvnrepository.com/artifact/com.google.firebase/firebase-bom?repo=google -firebase = "31.0.1" # https://github.com/junit-team/junit4/releases junit = "4.13.2" # https://developer.android.com/jetpack/androidx/releases/test @@ -87,8 +81,6 @@ android-gradlePlugin = { group = "com.android.tools.build", name = "gradle", ver android-tools-desugar = { group = "com.android.tools", name = "desugar_jdk_libs", version.ref = "desugar" } android-material-material = { group = "com.google.android.material", name = "material", version.ref = "material" } -google-servicesPlugin = { group = "com.google.gms", name = "google-services", version.ref = "googleServicesPlugin" } - google-dagger-hiltPlugin = { group = "com.google.dagger", name = "hilt-android-gradle-plugin", version.ref = "hilt" } google-dagger-hiltAndroid = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" } google-dagger-hiltCompiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" } @@ -98,11 +90,6 @@ google-dagger-hiltAndroidTesting = { group = "com.google.dagger", name = "hilt-a google-protobuf-javalite = { group = "com.google.protobuf", name = "protobuf-javalite", version.ref = "protobuf" } google-protobuf-protoc = { group = "com.google.protobuf", name = "protoc", version.ref = "protobuf" } -google-firebase-crashlyticsPlugin = { group = "com.google.firebase", name = "firebase-crashlytics-gradle", version.ref = "firebaseCrashlytics" } -google-firebase-bom = { group = "com.google.firebase", name = "firebase-bom", version.ref = "firebase" } -google-firebase-analyticsKtx = { group = "com.google.firebase", name = "firebase-analytics-ktx" } -google-firebase-crashlyticsKtx = { group = "com.google.firebase", name = "firebase-crashlytics-ktx" } - google-truth = { group = "com.google.truth", name = "truth", version.ref = "truth" } jetbrains-kotlinPlugin = { group = "org.jetbrains.kotlin", name = "kotlin-gradle-plugin", version.ref = "kotlin" }