【问题标题】:Localization Android本地化安卓
【发布时间】:2013-06-06 17:37:10
【问题描述】:

android 支持哪些语言以各自的值文件夹名称进行本地化,我能找到的最佳链接是http://developer.android.com/reference/java/util/Locale.html

任何机构都可以帮助我处理更多语言,如果我们需要支持以上列出的更多语言。

【问题讨论】:

  • 我需要输入下列语言葡萄牙语

标签: android localization


【解决方案1】:

我的应用使用以下未记录的语言,它们可以正常工作:

  • 加泰罗尼亚语
  • el 希腊语
  • es 西班牙语
  • pl 波兰语
  • pt 葡萄牙语
  • ro 罗马尼亚语
  • ru 俄语
  • sv 瑞典语

更一般的应该是this table的“639-1”列中的字符串。

【讨论】:

  • 所以使用未记录的 XX 值将确保正确本地化应用程序,对吧?
  • 未记录的列表是 91 个语言环境,所以我们可以正常使用它吗?
  • 救了我。直觉让我把cat 放在加泰罗尼亚语而不是ca (因为ca 听起来更适合加拿大)。我们谈论的是语言,而不是地理区域。
【解决方案2】:

我建议使用ISO 639-1 标准的列表

【讨论】:

    【解决方案3】:

    几乎任何由表示语言代码(如specified by ISO 639-1)和(可选)国家(如Alpha 2 representation of ISO 3166-1 定义)的字符串定义的语言。您可以只指定语言(即“en”)或在一个区域中专门使用的语言(即“en”、“US”)。您不需要使用 Locale 附带的常量(虽然很方便)。

    // This is to get spanish locale of Spain
    Locale spanish = new Locale("es", "ES");
    

    问题不仅在于指定正确的语言,还在于确保手机支持指定区域设置的文字/格式。 IE。在西班牙销售的手机将支持“es”和“es_ES”,几乎可以肯定“en”和“en_US”也可能支持“ca_ES”、“ba_ES”和“gl_ES”。它不太可能支持例如“es_AR”或“zh_CN”。所以我认为你的问题的答案是“这取决于你的应用程序的市场”。

    【讨论】:

    • 我想以上述语言为目标,是的,我知道这些语言环境甚至可能不可用,但是与未记录的列表不同,记录的列表非常有限,而未记录的列表可以从简单的 sn-p 获得(语言环境温度:Locale.getAvailableLocales()){ Log.i(temp.getDisplayCountry() + " - " + temp.getDisplayLanguage() , temp.toString()); }
    • 您应该注意Locale.getAvailableLocales()返回的列表,因为这些是您的手机实际支持的
    • 重要的不是设备真的支持语言,而是设备的设置中列出了语言,方便你选择。您可以使用未记录的语言,例如“eu”(巴斯克语),但您无法将设备的语言环境设置为巴斯克语。尽管如此,这种语言的真正“支持”并不是必需的,您只需使用任何适当的应用程序将设备的语言环境设置为“eu”,“支持”就会出现。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多