我想删除所有未使用的布局,字符串,绘图,颜色等从我的Android res目录。是否有任何工具可以给我一个文件列表,我可以从我的存储库中删除特定文件中的元素(例如未使用的字符串条目),这些文件不再使用?


当前回答

Android的Gradle构建系统支持“资源收缩”:自动删除未使用的资源,在构建时,在打包的应用程序中。除了删除项目中在运行时实际上不需要的资源外,这也会删除你所依赖的库中的资源,如果它们不是你的应用程序实际需要的话。

要启用此功能,在gradle文件中添加行shrinkResources true。

   android {
        ...

        buildTypes {
            release {
                minifyEnabled true //Important step
                shrinkResources true
            }
   }
}

查看这里的官方文件,

http://tools.android.com/tech-docs/new-build-system/resource-shrinking

其他回答

检查string.xml。

这很简单(至少在我的Eclipse版本中)

在Eclipse for Android(我有版本v22.6.2-1085508)

在“包资源管理器”中左键单击项目名称 选择“Android Tools”。 选择“运行Lint:检查常见错误”。

现在当打开strings.xml时,您将看到未使用的字符串被高亮显示。

您可以修复其他潜在的问题。

Android的Gradle构建系统支持“资源收缩”:自动删除未使用的资源,在构建时,在打包的应用程序中。除了删除项目中在运行时实际上不需要的资源外,这也会删除你所依赖的库中的资源,如果它们不是你的应用程序实际需要的话。

要启用此功能,在gradle文件中添加行shrinkResources true。

   android {
        ...

        buildTypes {
            release {
                minifyEnabled true //Important step
                shrinkResources true
            }
   }
}

查看这里的官方文件,

http://tools.android.com/tech-docs/new-build-system/resource-shrinking

这里有非常棒的答案,提供了很好的工具

但如果你打算删除png-drawables(或其他图像文件),你也应该考虑将所有drawable-xxxx文件夹从你的项目中移到一个临时文件夹中,然后重新构建所有文件夹,并查看构建消息列表,它会告诉你哪些文件夹丢失了。

如果你想要获得你正在有效使用的资源的概述,并可能用图标字体或svg资源替换它们,这可能是Android Iconics库的帮助,这可能是特别有用的。

1 - - - >

Android Studio菜单> Refactor >删除未使用的资源

如下图:

**

OR

**

2——>第二种方式

->按Ctrl Alt Shift i,在Windows中输入“unused resources”(不带引号)

->使用⌘Option Shift i for mac

or

-> cmd + Alt + Shift for mac

我们开源了一个工具,可以根据lint输出删除android项目中所有未使用的资源。 可以在这里找到:https://github.com/KeepSafe/android-resource-remover