我正在将一些值存储到从小部件启动的活动的共享首选项中。如果我从同一个小部件启动的服务中检索该值,则它不是更新的值。我得到了共享偏好中先前的值。即使我检查了共享首选项 xml 中的该值,我也看到了更新后的值。
为什么会发生这种情况。我知道widget和activity是两个进程,是这个原因吗?
SharedPreferences preferences = getSharedPreferences("preferences_target_value", Context.MODE_PRIVATE);
String targetValue = preferences.getString("preferences_target_value", "0");
System.out.println("targetValue "+targetValue);`
这些值按进程缓存。
如果您在 Android > 2.3 上运行,则必须指定MODE_MULTI_PROCESS
你打电话时getSharedPreferences ()
。如果您在 Android
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)