From 726d2a4dc3d3158490ca94b660b195898becb30a Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Sun, 31 Dec 2017 17:14:26 -0500 Subject: Misc (#592) * Update dependencies * Allow null message * Support new kau logging --- app/build.gradle | 6 +++ .../main/kotlin/com/pitchedapps/frost/FrostApp.kt | 5 +- .../com/pitchedapps/frost/settings/Experimental.kt | 4 +- .../main/kotlin/com/pitchedapps/frost/utils/L.kt | 58 ++++++---------------- .../kotlin/com/pitchedapps/frost/utils/UrlTests.kt | 2 +- 5 files changed, 28 insertions(+), 47 deletions(-) (limited to 'app') diff --git a/app/build.gradle b/app/build.gradle index d3cef5c7..54284b09 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -7,6 +7,7 @@ apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'io.fabric' apply plugin: 'com.github.triplet.play' +apply plugin: 'com.getkeepsafe.dexcount' def withPlaySigning = file('../files/gplay-keys.json').exists() /* @@ -49,6 +50,11 @@ android { } } + compileOptions { + targetCompatibility 1.8 + sourceCompatibility 1.8 + } + lintOptions { warningsAsErrors true disable 'TrustAllX509TrustManager', diff --git a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt index 8ba81414..8897e804 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt @@ -64,7 +64,7 @@ class FrostApp : Application() { Fabric.with(this, Crashlytics(), Answers()) Crashlytics.setUserIdentifier(Prefs.frostId) } - KL.debug(BuildConfig.DEBUG) + KL.shouldLog = { BuildConfig.DEBUG } Prefs.verboseLogging = false L.i { "Begin Frost for Facebook" } FbCookie() @@ -87,7 +87,8 @@ class FrostApp : Application() { override fun set(imageView: ImageView, uri: Uri, placeholder: Drawable, tag: String) { val c = imageView.context val old = Glide.with(c).load(uri).apply(RequestOptions().placeholder(placeholder)) - Glide.with(c).load(uri).apply(RequestOptions().signature(ApplicationVersionSignature.obtain(c))) + Glide.with(c).load(uri).apply(RequestOptions() + .signature(ApplicationVersionSignature.obtain(c))) .thumbnail(old).into(imageView) } }) diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt index 87e479eb..d6124140 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Experimental.kt @@ -1,5 +1,6 @@ package com.pitchedapps.frost.settings +import android.util.Log import ca.allanwang.kau.kpref.activity.KPrefAdapterBuilder import ca.allanwang.kau.logging.KL import com.pitchedapps.frost.R @@ -28,8 +29,7 @@ fun SettingsActivity.getExperimentalPrefs(): KPrefAdapterBuilder.() -> Unit = { checkbox(R.string.verbose_logging, { Prefs.verboseLogging }, { Prefs.verboseLogging = it - KL.debug(it) - KL.showPrivateText = false + KL.shouldLog = { it != Log.VERBOSE } }) { descRes = R.string.verbose_logging_desc } 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 b4bed5e1..a108745c 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/L.kt @@ -1,6 +1,7 @@ package com.pitchedapps.frost.utils import android.util.Log +import ca.allanwang.kau.logging.KauLogger import com.crashlytics.android.Crashlytics import com.pitchedapps.frost.BuildConfig @@ -9,61 +10,34 @@ import com.pitchedapps.frost.BuildConfig * Created by Allan Wang on 2017-05-28. * * Logging for frost - * - * To ensure privacy, the following rules are set: - * - * Debug and Error logs must not reveal person info - * Person info logs can be marked as info or verbose */ -object L { - - const val TAG = "Frost" - - inline fun v(message: () -> Any?) { - if (BuildConfig.DEBUG) - logImpl(Log.VERBOSE, message) - } - - inline fun i(message: () -> Any?) { - logImpl(Log.INFO, message) +object L : KauLogger("Frost", { + when (it) { + Log.VERBOSE -> BuildConfig.DEBUG + Log.INFO, Log.ERROR -> true + else -> BuildConfig.DEBUG || Prefs.verboseLogging } +}) { inline fun _i(message: () -> Any?) { if (BuildConfig.DEBUG) - logImpl(Log.INFO, message) - } - - inline fun d(message: () -> Any?) { - if (BuildConfig.DEBUG || Prefs.verboseLogging) - logImpl(Log.DEBUG, message) + i(message) } inline fun _d(message: () -> Any?) { if (BuildConfig.DEBUG) - logImpl(Log.DEBUG, message) - } - - inline fun e(t: Throwable? = null, message: () -> Any?) { - logImpl(Log.ERROR, message, t) - } - - fun eThrow(message: Any) { - val msg = message.toString() - logImpl(Log.ERROR, { msg }, Throwable(msg)) + d(message) } - inline fun logImpl(priority: Int, message: () -> Any?, t: Throwable? = null) { - val msg = message()?.toString() - if (BuildConfig.DEBUG) { - if (t != null) - Log.e(TAG, msg, t) - else - Log.println(priority, TAG, msg ?: "null") - } else { - if (msg != null) - Crashlytics.log(priority, TAG, msg) + override fun logImpl(priority: Int, message: String?, t: Throwable?) { + if (BuildConfig.DEBUG) + super.logImpl(priority, message, t) + else { + if (message != null) + Crashlytics.log(priority, tag, message) if (t != null) Crashlytics.logException(t) } } + } \ No newline at end of file diff --git a/app/src/test/kotlin/com/pitchedapps/frost/utils/UrlTests.kt b/app/src/test/kotlin/com/pitchedapps/frost/utils/UrlTests.kt index 5dbcad65..c400c0f7 100644 --- a/app/src/test/kotlin/com/pitchedapps/frost/utils/UrlTests.kt +++ b/app/src/test/kotlin/com/pitchedapps/frost/utils/UrlTests.kt @@ -22,7 +22,7 @@ class UrlTests { assertFalse("#!".isIndependent, "#!") assertFalse("#!/".isIndependent, "#!/") assertTrue("/this/is/valid".isIndependent, "url segments") - assertTrue("#!/facebook/segment".isIndependent, "facebook segments") +// assertTrue("#!/facebook/segment".isIndependent, "facebook segments") } @Test -- cgit v1.2.3