【问题标题】:Android find all hardcoded strings in code using Android StudioAndroid 使用 Android Studio 查找代码中的所有硬编码字符串
【发布时间】:2015-08-28 05:39:44
【问题描述】:

我想在我的代码中找到所有硬编码的字符串,将它们移动到strings.xml 文件中以供将来本地化。如:

Toast.makeText(context,"Hardcoded text",LENGTH_SHORT).show();

我使用 Android Studio。

【问题讨论】:

  • 这里的 android Lint 没有帮助你吗?我会尝试 lintRelease。
  • 我猜你可以使用正则表达式搜索 "(.)+" 找到 "strings",然后根据你的需要创建一个 strings.xml

标签: android


【解决方案1】:

好像已经回答here了,是不是和你的问题有关? 编辑:输入“硬编码文本”后不要忘记选中窗口中的“文件掩码”框,如果要在 Java 文件中搜索,请选择 *.java

在您找到所有硬编码字符串后,this 可能会帮助您将它们转换为 XML。

【讨论】:

  • 不,不是。此方法为我提供了*.xml 文件(布局、主题等)中的所有硬编码字符串,而不是 Java 代码。
  • 在输入“硬编码文本”后选中窗口中的“文件掩码”框,然后选择*.java
【解决方案2】:

This 回答没有给我任何结果。

不过,为了以后的搜索:

在 Android Studio 1.2.2 中添加了新选项 Hardcoded strings(不是 Hardcoded text),这对我来说是完美的搜索结果。

【讨论】:

    【解决方案3】:

    转到Analyze > Run Inspection By Name... (Ctrl+Alt+Shift+I)

    然后输入:

    • Hardcoded Text 找到硬编码的字符串 .xml 文件
    • Hardcoded Strings.java 文件中查找硬编码字符串。

    整个项目运行它,您应该会得到一个检查结果面板,该面板将显示硬编码的文本实例。

    【讨论】:

    • 这就是完整的答案
    • 请在此处查看我的回答stackoverflow.com/a/56121083/3904109 它可能会对您有所帮助...
    • 但是,我也有库字符串如何避免这种情况?
    【解决方案4】:

    android studio 1.2.2 之后好像挺简单的,

    去分析

    按名称运行检查

    类型:硬编码文本

    然后通过选择适当的模块选项,您可以获得整个项目中的所有硬编码字符串。

    提示:快捷键:Ctrl + Alt + Shift + I

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-22
      • 2015-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-14
      相关资源
      最近更新 更多