Android应用程序的多语言支持

时间:2014-02-12 05:26:03

标签: java android database performance android-layout

我正在开发一个Android应用程序,其中用户要求是使用多语言的应用程序。我需要知道哪种方法最好。

  1. 将语言(string.xml)存储在文件夹中。例如:对于名为value-fr。
  2. 的文件夹中的法语
  3. 将所有标签和相应语言存储在Db表中,并检索不同语言选择的语言。
  4. 从以上两种方法来看,这是考虑应用程序性能的最佳方法。

4 个答案:

答案 0 :(得分:1)

你可以做任何一种方式,但最好的方法是选项1.即通过将语言(string.xml)存储在像values-Fr这样的文件夹中。使用它将允许android自动执行处理,而不是告诉数据库,这是您需要的当前语言环境。

答案 1 :(得分:1)

最好的方法是通过将所有法语语言存储在{​​{1}}文件夹中来获取资源文件夹,并将其全部反映在应用程序中。

通过遵循资源方式,您无需为管理应用程序流中的每个内容而烦恼。应用程序将根据res/values-fr语言直接更改,因为用户将其语言更改为法语。如果您保留,它将直接访问French文件夹中的所有资源。

如果您将按数据库方式进行,那么在这种情况下,您应该检查区域设置,并且您必须根据本地每次都管理应用程序的所有值,这将导致处理资源的复杂性。

所以,如果android为您提供如此出色的功能,为什么不采用最佳方式呢?

答案 2 :(得分:0)

您应该在res中创建不同的文件夹,以多种语言支持您的应用程序。

Android自动处理所有事情,它从该文件中挑选字符串资源,这是您当前的设备语言。

答案 3 :(得分:0)

只是扮演恶魔的倡导者 - 此时Android仅支持ISO 639-1(2个字母)代码,支持ISO 639-2(三个字母的语言代码)的Java 7不是本地的由设备的资源目录框架支持。

如果您的要求希望您遵守标准中设置的三个字母的语言代码,那么您可能需要在其他地方寻求此支持(无论是内部解决方案还是其他第三方解决方案)。

相关问题