我有一个完整的 Titanium Android 应用程序(开发人员不是我)。我想本地化它,但字符串和 UI 都在源代码中硬编码。用 javascript 构建的应用程序。
UI 也很重要,因为我们还想要一个从右到左的应用程序版本。
需要提一下,我对 Titanium 环境还很陌生。
完成这项任务的最佳方法是什么?
我有一个完整的 Titanium Android 应用程序(开发人员不是我)。我想本地化它,但字符串和 UI 都在源代码中硬编码。用 javascript 构建的应用程序。
UI 也很重要,因为我们还想要一个从右到左的应用程序版本。
需要提一下,我对 Titanium 环境还很陌生。
完成这项任务的最佳方法是什么?
您需要获取源代码并找到所有硬编码字符串并将它们移动到 il8n/ 文件夹的 string.xml 文件中。您需要在适当的语言目录中使用与您要表示的特定硬编码值相对应的字符串创建这些文件之一。
例如:
var mystring = L('hi_text');
在 Titanium 中,此代码将转到语言文件夹(设备设置的,即 English 或 en 文件夹)并查找如下条目:
il8n/en 文件夹:
<string name="hi_text">Hello</string>
如果设备处于西班牙语模式,则相同的代码将查看 il8n/es 文件夹:
<string name="hi_text">Hola<string>
这将允许您切换语言,但更改 UI 可能会对源代码进行重大更改。在 app.js 文件中,您可能会尝试检测设备的语言并分支到完全不同的屏幕逻辑。您也可以在特定的屏幕 javascript 文件中执行此操作,您可以在其中为每种不同的语言调用一个创建函数。如果应用程序尚未内置该要求,您可能会更改应用程序的架构。