如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
当前回答
要从首选项中删除键-值对,可以轻松执行以下操作
getActivity().getSharedPreference().edit().remove("key").apply();
我还开发了一个库,用于方便地操作共享首选项。你可以找到下面的链接
https://github.com/farruhha/SimplePrefs
其他回答
你可以使用preferences.edit().remove("key").commit()从共享首选项中删除保存的值。
String prefTag = "someTag";
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(applicationContext);
prefs.edit().remove(prefTag).commit();
这将删除保存的名称为“someTag”的共享首选项。
似乎所有的解决方案都不是完全有效或死亡
清除活动中的所有SharedPreferences
PreferenceManager.getDefaultSharedPreferences(getBaseContext()).edit().clear().apply();
从onCreate之后的Main Activity调用这个
注:我使用了.apply()而不是.commit(),你可以自由选择commit();
根据API 24(牛轧糖),你可以这样做:
context.deleteSharedPreferences("YOUR_PREFS");
然而,没有向后兼容性,所以如果你支持小于24的版本,请坚持使用:
context.getSharedPreferences("YOUR_PREFS", Context.MODE_PRIVATE).edit().clear().apply();
Kotlin ktx清除所有首选项的方法:
val prefs: SharedPreferences = getSharedPreferences("prefsName", Context.MODE_PRIVATE)
prefs.edit(commit = true) {
clear()
}
点击这里查看所有共享首选项操作示例