3

根据Android 语言环境文档

请注意,Java 使用了几个已弃用的两字母代码。希伯来语(“he”)语言代码被改写为“iw”,印尼语(“id”)改写为“in”,意第绪语(“yi”)改写为“ji”。即使您构造自己的 Locale 对象,这种重写也会发生,而不仅仅是各种查找方法返回的实例。

在不复制文件的情况下,有没有办法在创建应用程序时同时支持已弃用和官方语言代码?

我目前的情况是有一个用户使用手机"he",而大多数其他用户使用"iw". 我(天真地)尝试使用两种方法解决这个问题 - 都失败了。

  1. 在目录结构中创建一个链接,以便values-he链接到values-iw. 正如所料,Eclipse 将其视为一个lnk文件
  2. 使用代码手动将一种编码切换到另一种编码 ( if (lang.toLowerCase(Locale.US).equals("iw")) { lang = "he";})。在阅读了上面的文档之后,很明显这种方法也行不通。

根据这个问题(并且根据文档),我很惊讶地看到这个问题首先出现,因为我认为它"iw"总是会被使用;然而,这种情况并非如此。

4

0 回答 0