【问题标题】:How do I set the default language of an Android App? (Appcelerator)如何设置 Android 应用的默认语言? (加速器)
【发布时间】:2017-09-13 07:50:53
【问题描述】:

我目前正在开发一个带有 Appcelerator 的 Android 应用程序,它只有西班牙语。

我的问题是,如果用户的智能手机不是西班牙语,strings.xml 中的字符串将不会显示:

如何将西班牙语设置为我的应用的默认语言?我在 Appcelerator wiki 上找到了一个解决方案,但它仅适用于 iOS https://wiki.appcelerator.org/display/guides2/Internationalization#Internationalization-Setdefaultlanguage

【问题讨论】:

    标签: javascript titanium appcelerator titanium-mobile


    【解决方案1】:

    英文是所有 Titanium 应用程序的默认翻译,因此英文文件是强制性的。如果你只是将英文文件夹添加到你的 i18n 目录(在 app 目录中),你应该很好。

    如果您的应用程序仅使用西班牙语,只需将西班牙语添加到该目录,一切都应该在任何地方都可以正常工作。

    Appcelerator JIRA 中有一张票用于添加支持,cmets 中也有一种覆盖方式:https://jira.appcelerator.org/browse/TIMOB-20527

    【讨论】:

    • 我只有 i18n/es/strings.xml 文件,但如果我尝试在具有不同语言的智能手机上运行该应用程序,则不会显示任何字符串。我尝试在三星 Galaxy S6 (Android 6.0) 模拟器和我的 BQ Aquaris E5 4G (Android 5.1) 上将系统语言设置为英语,但我在两台设备上都面临同样的问题:我看不到字符串。
    • en 目录中的文件是强制性的。只需将它们放在那里以及es 目录中即可。
    • 非常感谢!该解决方案非常有效。
    • 很高兴听到。您可以随时加入tislack.org 加入 slack 的 Ti 社区,并在 helpme 频道提问;)
    【解决方案2】:

    我建议添加另一种语言的翻译。只需转到 Strings.xml,在右上角,您会找到一个选项,上面写着 - “打开编辑器”。在编辑器中,只需输入您对另一种语言(可能是英语)的字符串的翻译。这将使您的应用同时支持英语和西班牙语。

    【讨论】:

    • 这将解决使用英语智能手机的用户的问题,但如果他们使用法语或德语,问题仍然存在。
    • 但是如果你有一个在德国或法国的用户,他会期望这个应用程序是德语/法语的。所以你必须为你想支持的任何国家提供翻译。你期待什么行为?字符串会自动转换为德语和法语吗?
    • 它也可以被谷歌自动翻译,但我从未使用过该服务。这是一项付费服务​​support.google.com/l10n/answer/6359997
    • 我希望即使用户是法国人或德国人,应用程序也会显示西班牙语字符串。顺便说一句,在西班牙还有其他地区语言而不是西班牙语,一些用户在他们的智能手机上使用这些语言。无法将西班牙语设置为我的应用的默认语言和唯一语言?
    • 我相信如果用户在手机上使用该语言,它至少应该显示字符串。它确实显示在我的身上,即使我的默认为英语,我也尝试过。因此,如果它没有显示,则该语言不在电话中。或者可能是特定于手机的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-21
    • 2016-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多