😺
【Android】メモリリークを検知する LeakCanary を個人アプリに導入してみた
LeakCanary は、Android用のメモリリーク検出ライブラリ です。
破棄された以下のオブジェクトのメモリリークを自動で検出します。
Activity
Fragment
fragment View
ViewModel
Service
興味があったので、個人開発している 釣りの単位変換 に導入してみました。
セットアップ
app/build.gradle
dependencies {
// 追加
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.9.1'
}
使い方
依存関係にLeakCanary
を追加したら、アプリを実行します。
LeakCanary
が正常に動いていると、Logcat
のDebug
に、LeakCanary is running and ready to detect memory leaks.
というログが出力されます。
そして、自動的にLeakCanary
のアプリが作成されるので、アプリを起動してLeaks
画面でメモリリークを確認することが出来ます。
今回、私のアプリではメモリリークが発生していないことが確認できました(よかった)。
ちなみに、メモリリークが発生していると、Leaks
画面は以下のようになります(LeakCanary
から引用)
Discussion