使用在运行时获得的信息本地化 iOS 应用程序

Localise an iOS app using information obtained at runtime

我有一个奇怪的要求,即我要在应用程序中显示的所有数据都来自远程服务器。数据由简单的文本、数字、日期和价格组成。现在,如果所有这些数据都是静态的,那么任务就简单了,但这里的问题是数据是动态的(来自服务器),而且应用程序必须本地化为至少 20 种语言。最大的挑战是在 运行.

的设备设置中将价格值转换为用户选择的货币

对于货币换算,您可以使用 Yahoo API。示例可见this Whosebug question.

http://finance.yahoo.com/currency-converter/#from=USD;to=EUR;amt=1

This url format could be used to fetch conversion rates in different formats.

http://download.finance.yahoo.com/d/quotes.csv?s=AUDUSD=X&f=nl1d1t1

Substitute quotes.csv with appropriate format and parameters with the required codes

就来自服务器的文本的本地化而言,这是一个更困难的问题。我认为“即时”翻译这个非常困难。正确的解决方案是在请求中包含语言,并让服务器 return 请求语言中的任何文本。

我想您可以采用另一种方法(这可能不可行,具体取决于您处理的不同字符串的数量)是从服务器枚举所有可能的字符串 return。然后采用更传统的方法将这些字符串翻译并包含在您的应用程序中。