【发布时间】:2013-11-20 11:45:36
【问题描述】:
我们的客户端应用程序可以偶尔从服务器更新“语言文件”。然而,在 android 上支持它似乎是一个相当大的挑战。 我尝试使用 inflate( XmlPullParser, ... ) 但后来发现它不支持非二进制 XML 文件。
给出以下内容:
- 我们的应用程序使用
@string/resource_id资源来支持语言。基本支持英文,但要求是动态提供语言资源。也就是说,如果我们需要支持希腊语,或提供对希腊语文本的更改,我们应该能够在运行时提供。 - 因此,在运行时,我们的应用程序会连接一个服务并下载一个 XML 文件,其语法类似于当前语言中的 string.xml。
剩下的就是如何以理智的方式更改应用程序中的文本资源(不是一个一个..)
我尝试使用 inflate(带有 XmlPullParser 参数),但它似乎适用于二进制预编译的 XML 文件。要使用它,需要事先对 XML 进行二进制化,这样兼容性会降低,更不用说 aapt.exe 工具的文档记录较少,尤其是在我的情况下。
那么,有什么想法吗?
【问题讨论】:
标签: android xml localizable.strings