我找到了一个未使用的字符串资源,例如:
<string name="obsoletestring">my name is null!</string>
然而,在strings.xml
,values
,values-af
等文件夹中的不同values-be
个文件中存在数十种不同语言的文件。
我一定错过了一些不知道如何在Android Studio中执行此操作的方法,而不是逐个手动修改。
tl; dr 如何为所有配置删除未使用的字符串资源?
答案 0 :(得分:25)
识别所有未使用的资源:
Android Studio(v 1.0)中没有非常简单的方法可以删除所有语言环境的资源字符串。但是,您可以搜索和替换文件。幸运的是,在大多数情况下,翻译文件只使用一行,因此效果非常好。
在Android Studio中:
.*name="obsoletestring".*\n
答案 1 :(得分:21)
现在可以内部 Android Studio。 在Lint检查后,您会在右侧看到一个选项删除所有未使用的资源!
要跨所有区域设置文件删除单个字符串资源,可以使用“翻译编辑器”。 1.右键单击res目录以打开翻译编辑器。 2.选择“显示所有键”选择器,然后选择“按文本过滤”。提供要删除的资源的名称。 3.选择资源,然后单击“ - ”按钮
答案 2 :(得分:5)
在IDE支持出现之前,这些内容将起作用:
find -name strings.xml|xargs -rd\\n sed -ri '/"string_to_delete"/d'
答案 3 :(得分:2)
答案 4 :(得分:2)
从结果中选择所有未使用的字符串资源。
菜单 - &gt;查找 - &gt;在路径中替换
答案 5 :(得分:0)
事实上,Android Lint应报告未使用的资源,但您也可以尝试使用this漂亮的插件。
答案 6 :(得分:0)
请注意,REMOVE UNUSED RESOURCES命令无法将以编程方式访问的资源识别为已使用的资源(例如getIdentifier(..)等)。 因此,如果您以这种方式访问资源,那么使用该命令风险很大!!