我正在我的应用程序中使用firebase远程配置。我有两个参数message1和message2,如下图所示。图像中也可以看到语言条件(阿拉伯语和法语)。
Locale locale = new Locale("ar");//or "fr" if user selects french
Locale.setDefault(locale);
Configuration configuration = new Configuration();
configuration.locale = locale;
getResources().updateConfiguration(configuration, getResources().getDisplayMetrics());
这是我用来从firebase获取数据的代码:
mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
mFirebaseRemoteConfig.setDefaults(R.xml.remote_config_defaults);
long cacheExpiration = 0;
mFirebaseRemoteConfig.fetch(cacheExpiration)
.addOnCompleteListener(MainActivity.this, new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(MainActivity.this, "Fetch Succeeded",
Toast.LENGTH_SHORT).show();
// After config data is successfully fetched, it must be activated before newly fetched
// values are returned.
mFirebaseRemoteConfig.activateFetched();
} else {
Toast.makeText(MainActivity.this, "Fetch Failed",
Toast.LENGTH_SHORT).show();
}
String welcomeMessage1 = mFirebaseRemoteConfig.getString("message1");
String welcomeMessage2 = mFirebaseRemoteConfig.getString("message2");
}
});
现在的问题是,每当我试图从服务器获取消息1和消息2时,它只返回默认的英语文本,而不会返回相应的阿拉伯语或法语区域设置文本。这是为什么?请帮忙。