Files
flipper/docs/setup/leak-canary-plugin.md
Pascal Hartig 72a140bd96 Flipper Release: v0.31.0
Summary:
== Highlights ==

- Database query favourites are now persisted across sessions (b0caaa7)
- Allow disabling iOS development in Settings
(aab004a)
- Various improvements to the sidebar
- FPS graph to visualize slow UIs for plugin developers (31df1db)
- Window theme attributes when clicking on a window in the inspector (c430fc3)
- Removed Stetho dependency (48d6ea4). Thanks, ZacSweers!
- Install plugins directly from package files (b9e7f5d6d1)

== Fixes ==

-  Mac plugins not showing up (02e0233)
- Doctor: log both shown and suppressed warnings (35d62e70cb). Thanks, mateosilguero!
- Fix default SDK path on Windows (e178221)
-  Doctor complains Android SDK is not installed
(b625efe)
-  Update welcome screen links (33ad41c)
- Fix 'Timed out waiting for device' error (060e8c0)

Reviewed By: priteshrnandgaonkar

Differential Revision: D19813089

fbshipit-source-id: 8b1fc6fb140d02b7f78adcadd7c45a3ed1755f2f
2020-02-10 07:03:07 -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.31.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" />