当前标签 / 多语言 / 总共1篇

Android 构建多语言支持的应用程序

Android 是少数流行的移动操作系统之一,拥有超过 190 个国家的数百万用户,并日益增长。所以当你想让你的应用在全球取得成功时,让应用本地化总是一个好主意。在进行本地化时,您应该考虑根据地区或国家使用适当的文本、音频、货币、数字和图形。但本教程只涉及本地化 Resource 支持多种语言。使用参考资料进行本地化说明在本地化应用程序时应该考虑其他事项。在本文中,我们将构建一个支持多语言的应用程序,它支持法语、德语、印地语和日语。

字符串本地化的工作原理

默认情况下,android 将英语作为主要语言,并从 res ⇒ values ⇒ strings.xml 加载字符串资源。当您想要添加对另一种语言的支持时,您需要通过添加连字符和 ISO 语言代码来创建一个 values 文件夹。例如,如果希望添加对法语的支持,应该创建一个名为 values-fr 的 values 文件夹,并在其中保存一个 strings.xml 文件,其中的所有字符串都翻译成法语。

简而言之,本地化工作如下:

  1. 当用户通过设置语言和输入改变设备语言时,android 操作系统会检查应用程序中是否有合适的语言资源(假设用户选择法语)。
  2. 如果应用支持所选的语言,则 android 在项目的 values-(ISO 语言代码)文件夹中查找其字符串资源。(对于法语,它从 values-fr/string.xml 加载字符串值)。
  3. 如果受支持的语言 strings.xml 缺少任何字符串值,则 android 始终会从默认的 strings.xml 文件(即 values/strings.xml)中加载缺少的字符串。

因此,默认的 stings.xml 文件必须包含应用程序使用的所有字符串值,否则应用程序将崩溃或强制关闭错误。

阅读更多