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

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


当前回答

要从首选项中删除键-值对,可以轻松执行以下操作

getActivity().getSharedPreference().edit().remove("key").apply();

我还开发了一个库,用于方便地操作共享首选项。你可以找到下面的链接

https://github.com/farruhha/SimplePrefs

其他回答

这是我的Kotlin方法:

      public fun clearAllSharedPrefs() {
            val sharedPreferences: SharedPreferences = MainApplication.applicationContext()
                .getSharedPreferences("MY_CUSTOME_KEY", Context.MODE_PRIVATE)
            sharedPreferences.edit().clear()
            sharedPreferences.edit().apply()
        }
Editor editor = getSharedPreferences("clear_cache", Context.MODE_PRIVATE).edit();
editor.clear();
editor.commit();
new File(context.getFilesDir(), fileName).delete();

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

今早刚做过。从命令提示符:

adb shell
cd /data/data/YOUR_PACKAGE_NAME/shared_prefs
rm * // to remove all shared preference files
rm YOUR_PREFS_NAME.xml // to remove a specific shared preference file

注意:这需要一个根设备,如库存Android虚拟设备,Genymotion设备,或一个实际根手机/平板电脑等。

Kotlin ktx清除所有首选项的方法:

val prefs: SharedPreferences = getSharedPreferences("prefsName", Context.MODE_PRIVATE)
prefs.edit(commit = true) {
    clear()
}

点击这里查看所有共享首选项操作示例