如何删除应用程序的SharedPreferences数据?

我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。


当前回答

你总可以用程序来做就像这里其他答案所建议的那样。但是出于开发目的,我发现这个插件非常有用,因为它大大加快了我的开发速度。

插件:ADB Idea

它为您提供了功能,以清除应用程序数据和撤销权限从您的Android工作室本身,只需点击一个按钮。

其他回答

要删除一个特定的值,

SharedPreferences。编辑器删除(字符串键)后跟commit()或apply()

要删除所有值, SharedPreferences。编辑器clear()后面跟着commit()或apply()

删除所有首选项:

SharedPreferences settings = context.getSharedPreferences("PreferencesName", Context.MODE_PRIVATE);
settings.edit().clear().commit();

去除单一偏好:

SharedPreferences settings = context.getSharedPreferences("PreferencesName", Context.MODE_PRIVATE);
settings.edit().remove("KeyName").commit();
new File(context.getFilesDir(), fileName).delete();

我可以在共享首选项中删除文件

根据API 24(牛轧糖),你可以这样做:

context.deleteSharedPreferences("YOUR_PREFS");

然而,没有向后兼容性,所以如果你支持小于24的版本,请坚持使用:

context.getSharedPreferences("YOUR_PREFS", Context.MODE_PRIVATE).edit().clear().apply(); 
String prefTag = "someTag";
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(applicationContext);
prefs.edit().remove(prefTag).commit();

这将删除保存的名称为“someTag”的共享首选项。