这个问题已经在这里有一个答案:
- SharedPreferences.onSharedPreferenceChangeListener没有一贯要求 8个回答
我已经注册registerOnSharedPreferenceChangeListener
我SharedPreferences
在我的活动。 当我更改保存在数据SharedPreferences
内服务于不同的进程中运行, onSharedPreferenceChanged
不叫!
我应该怎么做才能让Android的电话onSharedPreferenceChanged
?
最有可能的,它是由GC收集被当作垃圾。 我以前也遇到了这个问题。 做一个全局变量保持硬参考监听器。
OnSharedPreferenceChangeListener listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
// Implementation
}
};
在回答SharedPreferences.onSharedPreferenceChangeListener没有一贯要求解释它最好
文章来源: registerOnSharedPreferenceChangeListener not working for changes made in different process [duplicate]