【问题标题】:How to clear cache on a specific activity?如何清除特定活动的缓存?
【发布时间】:2019-03-08 10:57:57
【问题描述】:

我在android studio上搭建了一个android应用来获取客户的反馈,在每个activity开始的时候,我放了一个画外音。当客户完成任务后,应用返回到第一个屏幕(activity 1).

我想在应用程序到达最后一个活动时清除缓存以避免缓存问题(缺少声音..等)

非常感谢

【问题讨论】:

    标签: java android feedback


    【解决方案1】:

    要删除您自己的应用程序的缓存,然后只需删除您的缓存目录

    public static void deleteCache(Context context) {
    try {
        File dir = context.getCacheDir();
        deleteDir(dir);
    } catch (Exception e) { e.printStackTrace();}
    }
    
    public static boolean deleteDir(File dir) {
    if (dir != null && dir.isDirectory()) {
        String[] children = dir.list();
        for (int i = 0; i < children.length; i++) {
            boolean success = deleteDir(new File(dir, children[i]));
            if (!success) {
                return false;
            }
        }
        return dir.delete();
    } else if(dir!= null && dir.isFile()) {
        return dir.delete();
    } else {
        return false;
    }
    }
    

    它不会清除您的共享偏好。

    谢谢……

    【讨论】:

    • 我应该把这段代码写在activity的java文件还是manifest上?
    • @AyoubNassiri 您要删除应用程序缓存的位置。一旦参考这个link
    • @Ayoub Nassiri,在您的 Activity 方法 @Override onDestroy 上调用上述方法。
    猜你喜欢
    • 2020-05-31
    • 2012-02-05
    • 1970-01-01
    • 2016-04-16
    • 2017-10-02
    • 2013-08-16
    • 2020-06-13
    • 2020-08-22
    • 2014-11-03
    相关资源
    最近更新 更多