实时Playstore应用无法翻译我的文字

时间:2019-01-14 13:50:35

标签: android build localization translation

我制作了一个包含2个字符串文件的应用程序。 1.字符串值 2. values-kn里面的strings.xml

我的用户选择卡纳达语时要翻译的代码如下:

Locale locale = new Locale(language);
    Locale.setDefault(locale);
    Configuration config = new Configuration();
    config.locale = locale;
    getBaseContext()
            .getResources()
            .updateConfiguration(config, getBaseContext()
                    .getResources()
                    .getDisplayMetrics());

当我进行调试版本或发布版本并在不同的Android手机上运行时,此代码可以正常工作。 但是,当我将应用程序捆绑包上传到Play商店时,它不会更新该版本中的语言。我还在Play商店中添加了用于kn-in的翻译,但仍然无法将应用中的文字翻译为卡纳达语。

有人可以解释一下我在这里做错了吗,还是我错过了什么?这个问题一直困扰着我。

1 个答案:

答案 0 :(得分:2)

基本上,我的构建存在的问题是,我正在尝试新的发行捆绑包功能,并将其上传到Play商店。

因此,如果您在发布时使用最新的App Bundle工具,则该工具会在安装时根据用户的电话设置删除本地化文件。

我得到了一个非常有用的tutorial,它可以教您如何即时更改应用程序语言,以及如何在其注释部分中解决我的问题所在。

要解决我的问题,我要做的只是:

将其放在android标签内的app文件夹内的build.gradle文件中。

android {
//...
//... removed for brevity
     bundle {
        language {
           enableSplit = false
        }
    }
}

希望它可以帮助一些可能遇到此问题的人。干杯!