From 29327f086c9282168404592b87ba4531d419ba50 Mon Sep 17 00:00:00 2001 From: Yevhenii Kanivets Date: Sat, 3 Oct 2020 22:37:40 +0300 Subject: [PATCH 1/2] #9; Drop Fabric. --- app/build.gradle | 19 ------------------- .../moneytracker/util/CrashlyticsProxy.java | 15 +++++---------- 2 files changed, 5 insertions(+), 29 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 80db254..079d616 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,21 +1,6 @@ -buildscript { - repositories { - maven { url 'https://maven.fabric.io/public' } - } - - dependencies { - classpath 'io.fabric.tools:gradle:1.+' - } -} apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' -apply plugin: 'io.fabric' - -repositories { - maven { url 'https://maven.fabric.io/public' } - mavenCentral() -} android { compileSdkVersion 29 @@ -77,10 +62,6 @@ android { } dependencies { - proprietaryImplementation('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') { - transitive = true - } - implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.0.0' implementation 'com.google.android.material:material:1.0.0' diff --git a/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java b/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java index dd87ec2..32711b5 100644 --- a/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java +++ b/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java @@ -3,11 +3,6 @@ import android.content.Context; import androidx.annotation.Nullable; -import com.crashlytics.android.Crashlytics; -import com.crashlytics.android.answers.Answers; -import com.crashlytics.android.answers.ContentViewEvent; -import io.fabric.sdk.android.Fabric; - /** * Util class that wraps all Crashlytics interactions to disable Answers in * Debug mode and allow not including Crashlytics in free (fdroid) builds. @@ -33,7 +28,7 @@ private CrashlyticsProxy() { private boolean enabled; public static void startCrashlytics(Context context) { - Fabric.with(context, new Crashlytics()); + // Fabric.with(context, new Crashlytics()); } public void setEnabled(boolean enabled) { @@ -46,9 +41,9 @@ public boolean isEnabled() { public boolean logEvent(@Nullable String eventName) { if (enabled) { - Answers.getInstance().logContentView(new ContentViewEvent() + /*Answers.getInstance().logContentView(new ContentViewEvent() .putContentName(eventName) - .putContentType("Event")); + .putContentType("Event"));*/ return true; } else { return false; @@ -57,9 +52,9 @@ public boolean logEvent(@Nullable String eventName) { public boolean logButton(@Nullable String buttonName) { if (enabled) { - Answers.getInstance().logContentView(new ContentViewEvent() + /*Answers.getInstance().logContentView(new ContentViewEvent() .putContentName(buttonName) - .putContentType("Button")); + .putContentType("Button"));*/ return true; } else { return false; From e687a5c11b1ca3ff688284525e7f1f73b61108c3 Mon Sep 17 00:00:00 2001 From: Yevhenii Kanivets Date: Sat, 3 Oct 2020 22:52:11 +0300 Subject: [PATCH 2/2] #9; Migrate to Firebase Crashlytics. --- app/.gitignore | 4 ++-- app/build.gradle | 5 +++++ app/fabric.properties | 3 --- .../moneytracker/util/CrashlyticsProxy.java | 12 +++++------- build.gradle | 2 ++ 5 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 app/fabric.properties diff --git a/app/.gitignore b/app/.gitignore index e0fccc9..7c61bf7 100644 --- a/app/.gitignore +++ b/app/.gitignore @@ -1,3 +1,3 @@ /build - -*._.DS_Store \ No newline at end of file +google-services.json +*._.DS_Store diff --git a/app/build.gradle b/app/build.gradle index 079d616..d6f49db 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,6 +1,8 @@ apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' +apply plugin: 'com.google.gms.google-services' +apply plugin: 'com.google.firebase.crashlytics' android { compileSdkVersion 29 @@ -82,4 +84,7 @@ dependencies { compileOnly 'org.glassfish:javax.annotation:10.0-b28' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation 'androidx.cardview:cardview:1.0.0' + + implementation 'com.google.firebase:firebase-analytics:17.5.0' + implementation 'com.google.firebase:firebase-crashlytics:17.2.1' } diff --git a/app/fabric.properties b/app/fabric.properties deleted file mode 100644 index 055320f..0000000 --- a/app/fabric.properties +++ /dev/null @@ -1,3 +0,0 @@ -#Contains API Secret used to validate your application. Commit to internal source control; avoid making secret public. -#Wed Dec 14 10:33:29 EET 2016 -apiSecret=82d758bae86a87ef822afbfc6f3c016c28c0b43f1d46862ebf37405141fa3414 diff --git a/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java b/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java index 32711b5..d2cfb87 100644 --- a/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java +++ b/app/src/proprietary/java/com/blogspot/e_kanivets/moneytracker/util/CrashlyticsProxy.java @@ -2,6 +2,7 @@ import android.content.Context; import androidx.annotation.Nullable; +import com.google.firebase.analytics.FirebaseAnalytics; /** * Util class that wraps all Crashlytics interactions to disable Answers in @@ -26,9 +27,10 @@ private CrashlyticsProxy() { } private boolean enabled; + private static FirebaseAnalytics analytics; public static void startCrashlytics(Context context) { - // Fabric.with(context, new Crashlytics()); + analytics = FirebaseAnalytics.getInstance(context); } public void setEnabled(boolean enabled) { @@ -41,9 +43,7 @@ public boolean isEnabled() { public boolean logEvent(@Nullable String eventName) { if (enabled) { - /*Answers.getInstance().logContentView(new ContentViewEvent() - .putContentName(eventName) - .putContentType("Event"));*/ + analytics.logEvent(eventName, null); return true; } else { return false; @@ -52,9 +52,7 @@ public boolean logEvent(@Nullable String eventName) { public boolean logButton(@Nullable String buttonName) { if (enabled) { - /*Answers.getInstance().logContentView(new ContentViewEvent() - .putContentName(buttonName) - .putContentType("Button"));*/ + analytics.logEvent(buttonName, null); return true; } else { return false; diff --git a/build.gradle b/build.gradle index d5d3eea..152dd00 100644 --- a/build.gradle +++ b/build.gradle @@ -8,6 +8,8 @@ buildscript { classpath 'com.android.tools.build:gradle:3.5.0' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + classpath 'com.google.gms:google-services:4.3.4' + classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0' } }