在卸载应用程序时,如何删除保存在外部存储公共目录Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
中的图片。
答案 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禁止回答
您可以使用广播接收器来做到这一点。
希望有帮助。