在运行时向android应用程序添加外部语言的最佳方法是什么?

时间:2013-11-20 11:45:36

标签: android xml localizable.strings

我们的客户端应用程序偶尔会从服务器更新“语言文件”。然而,在Android上支持它似乎是一个很大的挑战.. 我尝试使用inflate(XmlPullParser,...),但后来发现它不支持非二进制XML文件。

以下是:

  1. 我们的应用使用@string/resource_id资源来支持语言。基本上它支持英语,但要求是动态提供语言资源。也就是说,如果我们需要支持希腊语,或者对希腊语言文本进行更改,我们应该能够在运行时提供它。
  2. 因此,在运行时,我们的应用程序连接服务并下载XML文件,语法类似于当前语言的string.xml。
  3. 剩下的是如何以理智的方式更改应用程序中的文本资源(不是一个一个......)

    我尝试使用inflate(使用XmlPullParser参数)但它似乎打算用于二进制预编译的XML文件。要使用它,需要事先对XML进行二值化,这样就不太兼容了,更不要说aapt.exe工具的记录较少,特别是在我的情况下。

    那么,任何想法?

1 个答案:

答案 0 :(得分:0)

不知道它是否可以在Android中的任何地方完成,而不是使用本机资源引用,也许您可​​以使用Java Properties类并使用设备区域设置配置以编程方式检索所需的字符串?

相关问题