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

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


当前回答

删除所有首选项:

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();

其他回答

要删除特定的值:SharedPreferences.Editor.remove()后面跟着一个commit()

SharedPreferences.Editor.clear()后面跟着一个commit()

如果您不关心返回值,并且从应用程序的主线程中使用它,请考虑使用apply()。

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

插件:ADB Idea

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

芬兰湾的科特林:

  var prefs2: SharedPreferences? = context!!.getSharedPreferences("loginFB", 0)
  prefs2!!.edit().remove("email").commit()

如果是为了你的测试。可以使用adb命令。

adb shell pm clear <package name>
Editor editor = getSharedPreferences("clear_cache", Context.MODE_PRIVATE).edit();
editor.clear();
editor.commit();