commit | 771c26655a3a734efd34f87290306d8cc708c296 | [log] [tgz] |
---|---|---|
author | Pierre-Yves Ricau <py.ricau@gmail.com> | Fri Apr 20 22:23:21 2018 |
committer | Ella Polo and Pierre-Yves Ricau and Salvatore Testa <git+ella+py+sal@squareup.com> | Fri Apr 20 22:31:03 2018 |
tree | 353dd2be2f28bd2a91fcd8745ad13ec40a4cdac0 | |
parent | 55a5e2060bdd8a0f70d24b807581c0ef534115dc [diff] |
Adding asset to make laptop stickers
A memory leak detection library for Android and Java.
“A small leak will sink a great ship.” - Benjamin Franklin
In your build.gradle
:
dependencies { debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.5.4' releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4' }
In your Application
class:
public class ExampleApplication extends Application { @Override public void onCreate() { super.onCreate(); if (LeakCanary.isInAnalyzerProcess(this)) { // This process is dedicated to LeakCanary for heap analysis. // You should not init your app in this process. return; } LeakCanary.install(this); // Normal app init code... } }
You're good to go! LeakCanary will automatically show a notification when an activity memory leak is detected in your debug build.
To disable LeakCanary in unit tests, add the following to your build.gradle
:
// Ensure the no-op dependency is always used in JVM tests. configurations.all { config -> if (config.name.contains('UnitTest')) { config.resolutionStrategy.eachDependency { details -> if (details.requested.group == 'com.squareup.leakcanary' && details.requested.name == 'leakcanary-android') { details.useTarget(group: details.requested.group, name: 'leakcanary-android-no-op', version: details.requested.version) } } } }
If you want to also disable leak detection in instrumentation tests, add || config.name.contains('AndroidTest')
to the if
check above.
Questions? Check out the FAQ!
Copyright 2015 Square, Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.