From 1ef3528a622db6f40430c5dd97118aff5442ee6d Mon Sep 17 00:00:00 2001 From: tibbi Date: Fri, 10 Nov 2017 15:32:34 +0100 Subject: [PATCH] adding Leakcanary --- app/build.gradle | 9 +++++++++ app/src/main/kotlin/com/simplemobiletools/notes/App.kt | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/app/build.gradle b/app/build.gradle index 891ce849..7bdd2391 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -21,11 +21,13 @@ android { buildTypes { debug { applicationIdSuffix ".debug" + buildConfigField "boolean", "USE_LEAK_CANARY", "true" } release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release + buildConfigField "boolean", "USE_LEAK_CANARY", "false" } } @@ -39,10 +41,17 @@ android { } } +ext { + leakCanaryVersion = '1.5.4' +} + dependencies { compile 'com.simplemobiletools:commons:2.38.5' compile 'com.facebook.stetho:stetho:1.5.0' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" + + debugCompile "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion" + releaseCompile "com.squareup.leakcanary:leakcanary-android-no-op:$leakCanaryVersion" } buildscript { diff --git a/app/src/main/kotlin/com/simplemobiletools/notes/App.kt b/app/src/main/kotlin/com/simplemobiletools/notes/App.kt index 226061ff..d9cd8a51 100644 --- a/app/src/main/kotlin/com/simplemobiletools/notes/App.kt +++ b/app/src/main/kotlin/com/simplemobiletools/notes/App.kt @@ -2,10 +2,19 @@ package com.simplemobiletools.notes import android.app.Application import com.facebook.stetho.Stetho +import com.simplemobiletools.notes.BuildConfig.USE_LEAK_CANARY +import com.squareup.leakcanary.LeakCanary class App : Application() { override fun onCreate() { super.onCreate() + if (USE_LEAK_CANARY) { + if (LeakCanary.isInAnalyzerProcess(this)) { + return + } + LeakCanary.install(this) + } + if (BuildConfig.DEBUG) Stetho.initializeWithDefaults(this) }