From 23d0e789c71ace6a11206a0d6176bd8318185694 Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Sat, 3 Jun 2017 22:24:19 -0700 Subject: Crashlytics for test builds --- app/build.gradle | 4 ++++ app/proguard-rules.pro | 10 ++++++++-- app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt | 5 +---- app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt | 18 ++++++------------ .../com/pitchedapps/frost/web/FrostWebViewClient.kt | 5 ++++- .../kotlin/com/pitchedapps/frost/web/LoginWebView.kt | 3 ++- 6 files changed, 25 insertions(+), 20 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 4efb8529..5ebed14d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -34,11 +34,15 @@ android { buildTypes { debug { + minifyEnabled false + shrinkResources false applicationIdSuffix ".debug" versionNameSuffix "-debug" resValue "string", "app_name", "Frost Debug" } releaseTest { + minifyEnabled true + shrinkResources true applicationIdSuffix ".test" signingConfig signingConfigs.test versionNameSuffix "-test" diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 931de8da..c08dbb30 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -2,13 +2,19 @@ -keep class * extends com.raizlabs.android.dbflow.config.DatabaseHolder { *; } -keepattributes *Annotation* +#EventBus -keepclassmembers class ** { @org.greenrobot.eventbus.Subscribe ; } -keep enum org.greenrobot.eventbus.ThreadMode { *; } - +#Enums -keepclassmembers class * extends java.lang.Enum { public *; public static **[] values(); public static ** valueOf(java.lang.String); -} \ No newline at end of file +} +#Crashlytics +-keepattributes SourceFile,LineNumberTable +-keep public class * extends java.lang.Exception +-keep class com.crashlytics.** { *; } +-dontwarn com.crashlytics.** \ No newline at end of file diff --git a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt index 9cfe5618..52cb8c06 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt @@ -29,12 +29,9 @@ import timber.log.Timber.DebugTree class FrostApp : Application() { override fun onCreate() { - val core = CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build() - Fabric.with(this, core, Answers()) if (BuildConfig.DEBUG) Timber.plant(DebugTree()) else { - - Fabric.with(this, Crashlytics()) + Fabric.with(this, Crashlytics(), Answers()) Timber.plant(CrashReportingTree()) } FlowManager.init(FlowConfig.Builder(this).build()) diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt index 690f967c..63fbaffb 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt @@ -17,19 +17,13 @@ object L { } internal class CrashReportingTree : Timber.Tree() { - override fun log(priority: Int, tag: String, message: String, t: Throwable?) { + override fun log(priority: Int, tag: String?, message: String?, t: Throwable?) { if (priority == Log.VERBOSE || priority == Log.DEBUG) return - Log.println(priority, tag, message) - Crashlytics.log(priority, tag, message) -// FakeCrashLibrary.log(priority, tag, message) - -// if (t != null) { -// if (priority == Log.ERROR) { -// FakeCrashLibrary.logError(t) -// } else if (priority == Log.WARN) { -// FakeCrashLibrary.logWarning(t) -// } -// } + if (message != null) { + Log.println(priority, tag ?: "Frost", message) +// Crashlytics.log(priority, tag ?: "Frost", message) + } +// if (t != null) Crashlytics.logException(t) } } \ No newline at end of file diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt index 70129429..5c1aa5b1 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/web/FrostWebViewClient.kt @@ -2,7 +2,10 @@ package com.pitchedapps.frost.web import android.graphics.Bitmap import android.view.KeyEvent -import android.webkit.* +import android.webkit.WebResourceRequest +import android.webkit.WebResourceResponse +import android.webkit.WebView +import android.webkit.WebViewClient import com.pitchedapps.frost.LoginActivity import com.pitchedapps.frost.facebook.FACEBOOK_COM import com.pitchedapps.frost.facebook.FbCookie diff --git a/app/src/main/kotlin/com/pitchedapps/frost/web/LoginWebView.kt b/app/src/main/kotlin/com/pitchedapps/frost/web/LoginWebView.kt index d7c16a20..7073f645 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/web/LoginWebView.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/web/LoginWebView.kt @@ -11,6 +11,7 @@ import com.pitchedapps.frost.facebook.FbCookie import com.pitchedapps.frost.injectors.CssAssets import com.pitchedapps.frost.utils.L import com.pitchedapps.frost.views.circularReveal +import com.pitchedapps.frost.views.fadeIn import com.pitchedapps.frost.views.snackbar import io.reactivex.subjects.PublishSubject import io.reactivex.subjects.SingleSubject @@ -84,7 +85,7 @@ class LoginWebView @JvmOverloads constructor( cookieObservable.onNext(Pair(url, CookieManager.getInstance().getCookie(url))) CssAssets.LOGIN.inject(view, { if (view.visibility == View.INVISIBLE) - view.circularReveal(offset = 150L) + view.fadeIn(offset = 150L) }) } } -- cgit v1.2.3