45

我的项目有大量的 String 和 ImageResources,我觉得其中很多都没有使用。有什么办法可以找出我的代码中当前没有引用哪些资源?

4

9 回答 9

99

在 Android Studio(尝试到版本 2.1.3)中,您可以简单地转到Main Menu -> Analyze -> Run Inspection by Name...,然后选择Unused resources

在此处输入图像描述

(它为您运行 Android Lint。)

于 2014-10-09T15:38:16.057 回答
19

在 Android Studio 中有一个可用的快捷方式。

Ctlr + Alt + Shift + i(或Cmd + Option + Shift + i在 Mac 上)

这将打开一个对话框,您可以在其中键入“未使用”以查看许多选项。

我通常键入“未使用的资源”并获得一个列表,其中包括布局、字符串、可绘制对象等。

于 2016-04-13T09:41:04.477 回答
9

在 Android Studio 2.0 及更高版本中

在菜单中选择 Refactor-->点击Remove Unused Resources...

于 2016-06-28T05:50:14.030 回答
6

改进@Ramesh R 答案,最好的方法是右键单击您的 res文件夹,选择RefactorRemove Unused Resources

这个工具太棒了,我为他的开发者 xD 鼓掌;

于 2016-08-24T12:16:28.813 回答
1

你可以使用皮棉

Android Lint is a new tool for ADT 16 (and Tools 16) which scans Android project sources for potential bugs. 

Here are some examples of the types of errors that it looks for:
Missing translations (and unused translations)
Layout performance problems (all the issues the old layoutopt tool used to find, and more)
Unused resources
Inconsistent array sizes (when arrays are defined in multiple configurations)
Accessibility and internationalization problems (hardcoded strings, missing contentDescription, etc)
Icon problems (like missing densities, duplicate icons, wrong sizes, etc)
Usability problems (like not specifying an input type on a text field)
Manifest errors and many more.
于 2013-04-25T09:25:27.550 回答
1

是的,eclipse中的ADT包括android lint

参考android lint

于 2013-04-25T09:26:06.707 回答
1

您可以使用此库
将其放置到项目文件夹并从命令行运行 jar。

于 2013-04-25T09:35:44.903 回答
1

如果要删除可绘制文件中未使用的资源:单击可绘制文件〜然后单击重构〜然后单击删除未使用的资源..

于 2020-04-15T14:22:44.783 回答
0

关于您要删除的图像资源,您还应该考虑将所有 drawable-xxxx 文件夹从您的项目中移出到一个临时文件夹中,然后全部重建,并查看构建消息列表,它会告诉您哪个那些不见了。

如果您想大致了解您正在有效使用的资源,并可能在Android Iconics库的帮助下将它们替换为图标字体或 svg 资源,这将特别有用。

于 2016-12-12T08:38:00.197 回答