AndroidStudioで未使用のresourceを検出する

More than 3 years have passed since last update.

Android開発を進めていくと、昔作ったけど使われなくなったcolorsやstringsがちらほら出てきて整理したくなります。

しかしresourceの場合はJavaコードと違って使われていないところがLowLightにならないので、ファイルを見るだけではわかりません。nameで1つずつファイル検索して使われているか確認するのも面倒です。

そこで、AndroidStudioの Analyze > Inspect Code を使います。


Analyze > Inspect Code

Inspect Codeを実行すると、開いているプロジェクト内のコードを色々検査してくれます。

大きなプロジェクトの場合は結構時間かかるので、対象範囲のスコープをなるべく小さくする方がよいです。

Specify_Inspection_Scope.png


Unused resourcesをチェック

実行が終わると、Inspection結果が表示されます。

その中の Android Lint > Unused resources をチェックしましょう。

values_strings_xml_-__app__-_whovoice-android_-____work_whovoice-android_.png

使われていないdrawableやstringsなどが一覧で表示されているはずです。

あとは、該当のファイルや要素を消すだけです。


無視したい時は

後々使うから残しておきたい時は、Lintの対象から外しておけばよいです。

右クリックして、対象の要素にtools:ignore="UnusedResources"を追加してあげるだけです。

values_strings_xml_-__app__-_whovoice-android_-____work_whovoice-android_.png

こんな感じになります。

<dimen name="text_toolbar_title"

tools:ignore="UnusedResources">20sp</dimen>


Inspect Codeの補足

Inspect Codeで実行する内容は、設定の Inspectionsで変更できます。

Preferences.png


まとめて消すツール

大量に出てきていちいち消すのめんどくさいので一括で削除したい場合は、こちらの記事のツールがとても便利そうです。

Android開発してて不要なresourceを削除したい