如何在Android Studio的项目中找到所有硬编码字符串

时间:2014-07-30 18:02:40

标签: android internationalization android-studio

我需要在Android Studio(beta)0.84中查找并提取项目中的所有硬编码字符串。 我需要像Find Bugs这样的静态分析工具一次性为我做这件事,并允许我逐步完成每条消息并将字符串提取到资源文件。如果整个过程是自动化的,那就更好了。

在Android Studio(测试版)0.84中,文件/设置/ FindBugs-IDEA在报告选项卡下显示I18N作为选项。 但我无法弄清楚如何让它发挥作用。

感谢您的任何建议。

6 个答案:

答案 0 :(得分:107)

转到“分析>按名称运行检查...”,然后键入“硬编码文本”。对整个项目运行一个,你应该得到一个检查结果面板,它将显示硬编码的文本实例。

您还可以访问Android Studio>偏好>检查>硬编码文本并准确指定其运行方式,以及从检查中排除的特殊情况(如果有)。

答案 1 :(得分:88)

由于@Maor Hadad和其他赞成票提示我:我在答案中转换我的评论,所以:

自Android Studio 1.2.2起," Analyze>中有一个新选项。按名称运行检查" => "硬编码字符串"。我使用它,当前版本似乎比#34;硬编码文本"更可靠。 (仅检查xml文件)。

link

答案 2 :(得分:7)

对于Windows平台,我发现的最佳方式是:

您可以使用此快捷方式Ctrl Alt Shift I并搜索,

  

硬编码文字

在搜索栏中。

您可以选择要在其中搜索硬编码字符串的相应模块,它将为您提供所有字符串的列表。

Options for selecting modules

答案 3 :(得分:0)

如果您只想在所有布局文件中找到所有硬编码字符串,可以通过运行来快速完成 -

vinayak@vinayak-osx:layout $ grep -n "android:text=\"" * | grep -v "@string"

备注 -
1. grep不能在窗口上使用
2.首先cd投射layout目录 3. kcoppock答案很棒,但需要太多时间

答案 4 :(得分:0)

使用 Ctrl + Shift + F 组合,Windows可以随处搜索,也显示预览。

使用 Ctrl + F 组合在Windows中搜索当前文件。

使用Windows的 Shift + Shift (双班)组合搜索项目的项目文件。

旧版本可能无法使用。

答案 5 :(得分:0)

最适合我的是使用正则表达式搜索整个项目:

android:text =“ [a-z]

enter image description here

要在这些kotlin / java类中进行查找:

[。] text =“ [a-z]

enter image description here

[。] setText(“

enter image description here

请不要忘记点击上方这张图片末尾的。*蓝色按钮