我的应用程序使用SharedPreferences(通过PreferenceActivity的帮助)存储所有设置。但有时所有设置都会被删除,所有值都被重置为默认值。大多数出现在Android 3.x平板电脑上。 在普通智能手机上没有问题。
我观察到当Android杀死应用程序进程时,所有设置都会被删除。 我注意到这一点是因为通知图标不再显示。 我也想知道为什么进程会在平板电脑上被杀死而不是在智能手机上。在我的智能手机上,通知图标永远不会消失。
我的应用程序还有一个服务,主进程和服务都读写SharedPreferences中的设置。 我有时会注意到一旦服务写入SharedPreferences,所有设置就会被清除。但这并不总是发生。
有什么想法吗? 我意识到SharedPreferences不应该被不同的进程使用,但它在所有智能手机上都没有问题!
getPreferenceManager().setSharedPreferencesMode(Context.MODE_PRIVATE | Context.MODE_MULTI_PROCESS);
,但这不是解决方案。过了一会儿,所有设置都被重置为默认值。 - almisoft