私のアプリケーションはアプリの起動時にサービスを呼び出しています。アプリで共有設定の更新値がサービスに反映されていません
、私は与えられたキーと値のペアの値
SharedPreferences.Editor editor = getSharedPreferences(getString(R.string.shared_preferences_name), MODE_PRIVATE).edit();
editor.putString("key",value);
editor.apply();
を更新していると私はサービス
SharedPreferences preferences = getSharedPreferences(getString(R.string.shared_preferences_name), MODE_PRIVATE);
String key = preferences.getString("key",null);
が、サービスは常に表示されますから、それを取得しようとしています古いキー値つまり、値はアプリの起動またはサービスの再起動後に反映されます。
サービスまたはアプリケーションを再起動せずにサービスで更新された値を取得するにはどうすればよいですか?
前述のようにhere共有設定は複数のプロセスにわたって機能しません。他の選択肢はありますか?
任意のタイミングでリスナーを呼び出しません。 –
この行を変更してください。 'SharedPreferences prefs = getSharedPreferences(getString(R.string.shared_preferences_name)、MODE_PRIVATE);' –
これも試してみました。まだ電話しません。 –