Files
flipper/docs/setup/leak-canary-plugin.md
Pascal Hartig e797caff16 Flipper Release: v0.33.0
Summary:
Changelog TBD.

== Highlights ==

- React Native global hotkeys in the settings menu.

== Fixes ==

- iOS 9 support restored.

Reviewed By: priteshrnandgaonkar

Differential Revision: D20308823

fbshipit-source-id: e4d089d911af8155384c07678668662094c0c8b3
2020-03-09 07:42:35 -07: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.33.0'
  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" />