FirebaseMessagingService中的语言环境未更改

时间:2019-02-14 08:12:42

标签: android push-notification notifications

我的应用程序语言是土耳其语,设备语言是英语。我可以使用下面的代码平稳地设置土耳其语。所有应用程序页面均正确更改。

private void changeLang(String locale) {
        Resources res = this.getResources();
        DisplayMetrics dm = res.getDisplayMetrics();
        Configuration conf = res.getConfiguration();
        conf.setLocale(new Locale(locale.toLowerCase()));
        res.updateConfiguration(conf, dm);

        Configuration newConfig = new Configuration();
        newConfig.locale = new Locale(locale.toLowerCase());
        onConfigurationChanged(newConfig);
    }

但是,当我发送推送通知时,通知文本仍为英文。我调试时看到的语言环境仍然是英语。

    public class MyFirebaseMessagingService extends FirebaseMessagingService {

        @Override
        public void onMessageReceived(RemoteMessage remoteMessage) {
             Locale current = getResources().getConfiguration().locale;
            //current not change, always english
        }
    }

为什么服务无法获得真实的语言环境,所以总是获得设备的语言环境。

0 个答案:

没有答案