执行与清除数据按钮相同的操作

发布于 2024-12-19 17:32:37 字数 95 浏览 0 评论 0原文

有没有办法做同样的事情,以编程方式从“设置”->“应用程序”->“管理应用程序”清除数据按钮到应用程序?

否则我想单击删除所有共享首选项。怎么做呢?

Is there a way to do the same thing that does clear data button from Settings->Application->Manage Applications to an application programmatically?

Or else i want on click to delete all sharedpreferences. How to do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

笑脸一如从前 2024-12-26 17:32:37

要删除所有应用程序首选项,请使用 SharedPreferences.Editor.clear() 方法。
有关详细信息,请参阅此文档

To delete all your application preference SharedPreferences.Editor.clear() method.
See this documentation for details.

或十年 2024-12-26 17:32:37

Stackoverflow 上的许多用户不明白的是;您想要删除所有共享首选项文件。你不想一一清除它们。

您只需删除共享首选项文件夹中的所有文件即可:

    Context r = getActivity(); 
    File dir = new File(r.getFilesDir().getParent() + "/shared_prefs/"); // files directory is a sibling of the shared_prefs directory
    String[] children = dir.list();
    for (String aChildren : children) {
        r.getSharedPreferences(aChildren.replace(".xml", ""), Context.MODE_PRIVATE).edit().clear().commit();
    }
    try {
    Thread.sleep(800);
    }
    catch (InterruptedException e) { }
    for (String aChildren : children) {
        new File(dir, aChildren).delete();
    }
}

另请查看这些答案,了解更多信息以及删除共享的其他方法偏好。

What many users on Stackoverflow don't understand is; you want to delete ALL the shared preferences files. You don't want to clear them one by one.

You can simply delete all the files from your shared preferences folder:

    Context r = getActivity(); 
    File dir = new File(r.getFilesDir().getParent() + "/shared_prefs/"); // files directory is a sibling of the shared_prefs directory
    String[] children = dir.list();
    for (String aChildren : children) {
        r.getSharedPreferences(aChildren.replace(".xml", ""), Context.MODE_PRIVATE).edit().clear().commit();
    }
    try {
    Thread.sleep(800);
    }
    catch (InterruptedException e) { }
    for (String aChildren : children) {
        new File(dir, aChildren).delete();
    }
}

Also check these answers for more information and other ways of deleting shared preferences.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文