Приложение Live PlayStore не переводит мои тексты - PullRequest
0 голосов
/ 14 января 2019

Я сделал заявку с двумя строковыми файлами. 1. strings.xml внутри значений 2. strings.xml внутри values-kn

Код для перевода, когда мой пользователь выбирает каннада, выглядит следующим образом:

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

Этот код отлично работает, когда я делаю отладочную сборку или сборку выпуска и запускаю ее на разных телефонах Android. Но когда я загружаю комплект приложений в магазин игр, он не обновляет мой язык в этой сборке. Я также добавил перевод в магазине игр для kn-in, но все еще не могу перевести свои тексты в приложении на каннаду.

Может кто-нибудь объяснить, что я здесь делаю неправильно или я что-то упускаю? Эта проблема пожирает мои мозги.

1 Ответ

0 голосов
/ 24 января 2019

В основном проблема с моей сборкой заключалась в том, что я пробовал новую функцию комплекта релизов и загружал ее в магазин воспроизведения.

Итак, если вы используете новейший инструмент App Bundle при публикации, он удаляет файлы локализации на основе настроек телефона пользователя во время установки.

Я получил это чрезвычайно полезное учебное пособие , которое научит вас, как изменить язык приложений на лету, а также в разделе комментариев к нему, ответ на мою проблему соврал.

Чтобы решить мою проблему, все, что мне нужно было сделать, это:

Поместите это в тег android в файле build.gradle внутри папки приложения.

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

Надеюсь, это поможет кому-то, кто может столкнуться с этой проблемой. Ура!

...