作者:夜凄凉2502887267 | 来源:互联网 | 2023-05-18 19:33
我找到了一个未使用的字符串资源,如:
my name is null!
然而,它是在几十文件,不同的语言,在不同的strings.xml
文件中values
,values-af
,values-be
,等文件夹.
我一定错过了一些不知道在Android Studio中做任何事情的事情,除了一个接一个地手动修改它.
tl; dr如何为所有配置删除未使用的字符串资源?
1> mbells..:
识别所有未使用的资源:
打开菜单>分析>按名称运行检查...
选择"未使用的资源"
确保选中整个项目,然后按确定.
仔细查看清单.您始终可以使用"重新运行"按钮重新运行检查.
Android Studio(v 1.0)中没有非常简单的方法可以删除所有语言环境的资源字符串.但是,您可以搜索和替换文件.幸运的是,在大多数情况下,翻译文件只使用一行,因此效果非常好.
在Android Studio中:
在源代码管理中没有待处理的更改开始(如果出现问题,可以更轻松地检查和退出).
打开菜单>编辑>查找>替换路径...
在Text中查找: .*name="obsoletestring".*\n
在替换为:(空)
检查正则表达式
按"查找"按钮.
检查结果.如果没问题,请按"所有文件"按钮.
您可能必须手动删除res/values/strings.xml中的注释.
确保您的项目仍然构建.
在源代码管理中查看项目的差异,以确保更改真正符合您的意图......
2> chrisonline..:
它现在可以在 Android Studio中使用.在Lint检查后,您会在右侧看到一个选项删除所有未使用的资源!
要跨所有区域设置文件删除单个字符串资源,可以使用"翻译编辑器".1.右键单击res目录以打开翻译编辑器.2.选择"显示所有键"选择器,然后选择"按文本过滤".提供要删除的资源的名称.3.选择资源,然后单击" - "按钮
3> Stephen Nied..:
在IDE支持出现之前,这些内容将起作用:
find -name strings.xml|xargs -rd\\n sed -ri '/"string_to_delete"/d'