如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
如何删除应用程序的SharedPreferences数据?
我正在创建一个使用大量web服务来同步数据的应用程序。出于测试目的,我需要在重新启动应用程序时删除一些SharedPreferences值。
当前回答
你总可以用程序来做就像这里其他答案所建议的那样。但是出于开发目的,我发现这个插件非常有用,因为它大大加快了我的开发速度。
插件:ADB Idea
它为您提供了功能,以清除应用程序数据和撤销权限从您的Android工作室本身,只需点击一个按钮。
其他回答
似乎所有的解决方案都不是完全有效或死亡
清除活动中的所有SharedPreferences
PreferenceManager.getDefaultSharedPreferences(getBaseContext()).edit().clear().apply();
从onCreate之后的Main Activity调用这个
注:我使用了.apply()而不是.commit(),你可以自由选择commit();
要删除一个特定的值,
SharedPreferences。编辑器删除(字符串键)后跟commit()或apply()
要删除所有值, SharedPreferences。编辑器clear()后面跟着commit()或apply()
如果是为了你的测试。可以使用adb命令。
adb shell pm clear <package name>
要删除特定的值:SharedPreferences.Editor.remove()后面跟着一个commit()
SharedPreferences.Editor.clear()后面跟着一个commit()
如果您不关心返回值,并且从应用程序的主线程中使用它,请考虑使用apply()。
这是我的Kotlin方法:
public fun clearAllSharedPrefs() {
val sharedPreferences: SharedPreferences = MainApplication.applicationContext()
.getSharedPreferences("MY_CUSTOME_KEY", Context.MODE_PRIVATE)
sharedPreferences.edit().clear()
sharedPreferences.edit().apply()
}