如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
当前回答
芬兰湾的科特林:
var prefs2: SharedPreferences? = context!!.getSharedPreferences("loginFB", 0)
prefs2!!.edit().remove("email").commit()
其他回答
试试下面的代码:
SharedPreferences sharedPreferences = getSharedPreferences("fake", Context.MODE_PRIVATE);
SharedPreferences.Editor edit = sharedPreferences.edit();
edit.clear().commit();
从任意类中集中清除所有SharedPreferences:
public static SharedPreferences.Editor getEditor(Context context) {
return getPreferences(context).edit();
}
然后从任何类:(commit返回一个布尔值,你可以检查你的Preferences是否被清除)
Navigation.getEditor(this).clear().commit();
或者你可以用apply;返回为空
Navigation.getEditor(this).clear().apply();
要从首选项中删除键-值对,可以轻松执行以下操作
getActivity().getSharedPreference().edit().remove("key").apply();
我还开发了一个库,用于方便地操作共享首选项。你可以找到下面的链接
https://github.com/farruhha/SimplePrefs
要删除特定的值:SharedPreferences.Editor.remove()后面跟着一个commit()
SharedPreferences.Editor.clear()后面跟着一个commit()
如果您不关心返回值,并且从应用程序的主线程中使用它,请考虑使用apply()。
如果是为了你的测试。可以使用adb命令。
adb shell pm clear <package name>