Как изменить языки меток на Here Map? - PullRequest
0 голосов
/ 04 февраля 2020

Как указано на официальном сайте: HERE SDK не требует от разработчиков каких-либо действий для установки соответствующего языка, поскольку он автоматически определяет текущие настройки языка устройства и применяет тот же язык в SDK, если он поддерживается. Когда я меняю языковые настройки на телефоне, язык карты в моем приложении не меняется. Я также попытался изменить язык в настройках onCreate. И у меня тоже не получилось.

        Locale locale = new Locale("ru_RU");
        Locale.setDefault(locale);
        Configuration configuration = new Configuration();
        configuration.locale = locale;
        getBaseContext().getResources().updateConfiguration(configuration, getBaseContext().getResources().getDisplayMetrics());

Что я делаю не так? Почему язык не меняется?

Map image

1 Ответ

0 голосов
/ 03 апреля 2020

Это начинает работать с версией 4.1.6. Вам необходимо указать язык в MapSceneConfig и добавить его при загрузке сцены карты

private void loadMapScene() {
MapSceneConfig mapSceneConfig = new MapSceneConfig();
mapSceneConfig.mainLanguageCode = LanguageCode.RU_RU;
mapSceneConfig.fallbackLanguageCode = LanguageCode.RU_RU;

mapView.getMapScene().loadScene(MapStyle.NORMAL_DAY, mapSceneConfig, new MapScene.LoadSceneCallback() {
    @Override
    public void onLoadScene(@Nullable MapScene.ErrorCode errorCode) {
        if (errorCode == null) {
            hereMap = new HereMap(MainActivity.this, mapView);
        } else {
            Log.d(TAG, "onLoadScene failed: " + errorCode.toString());
        }
    }
});

}

...