卸载时如何删除Android外部存储公共目录中的图片?

时间:2018-09-05 11:10:16

标签: android

在卸载应用程序时,如何删除保存在外部存储公共目录Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)中的图片。

3 个答案:

答案 0 :(得分:1)

您应该将数据保存在外部缓存bqz中,卸载后无法删除任何文件。外部缓存将与您的应用一起删除。 selectAvailableCacheDir将为您提供可用缓存的文件对象。

static File selectAvailableCacheDir(Context context) {
        for (File file : ContextCompat.getExternalCacheDirs(context)) {
            if (file != null && ensureDirExists(file))
                return file;
        }
        return null;
    }

    static Boolean ensureDirExists(File dirFile) {
        if (!dirFile.exists()) {
            return dirFile.mkdir() || dirFile.mkdirs();
        } else if (dirFile.exists() && dirFile.isDirectory())
            return true;
        return false;
    }

答案 1 :(得分:0)

我不知道您实际上想要实现什么。

但是,但在卸载应用程序时,其所有组件也将被卸载(包括任何服务,内容提供商等)。删除该应用程序后,将进行系统广播ACTION_PACKAGE_REMOVED,因此该应用程序无法获取它。

答案 2 :(得分:0)

添加到@SRB禁止回答

您可以使用广播接收器来做到这一点。

希望有帮助。