Files
flipper/docs/setup/leak-canary-plugin.md
Pascal Hartig 959fcee827 Flipper Release: v0.32.1
Summary: Bugfix release with previous Electron version.

Reviewed By: cekkaewnumchai

Differential Revision: D20115911

fbshipit-source-id: 5f84c72f7e4b33d7661e7e6a4db64c51daa38851
2020-02-27 09:50:55 -08:00

1.2 KiB

id, title, sidebar_label
id title sidebar_label
leak-canary-plugin LeakCanary Setup LeakCanary

Ensure that you already have an explicit dependency in your application's build.gradle including the plugin dependency, e.g.

dependencies {
  debugImplementation 'com.facebook.flipper:flipper-leakcanary-plugin:0.32.1'
  debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.1'
  releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1'
}

First, add the plugin to your Flipper client instance:

import com.facebook.flipper.plugins.leakcanary.LeakCanaryFlipperPlugin;

client.addPlugin(new LeakCanaryFlipperPlugin());

Next, build a custom RefWatcher using RecordLeakService: (see LeakCanary docs for more information on RefWatcher)

import com.facebook.flipper.plugins.leakcanary.RecordLeakService;

RefWatcher refWatcher = LeakCanary.refWatcher(this)
    .listenerServiceClass(RecordLeakService.class)
    .buildAndInstall();

Then, add the RecordLeakService in your debug variant AndroidManifest.xml.

<service android:name="com.facebook.flipper.plugins.leakcanary.RecordLeakService" />