gpt4 book ai didi

android - App卸载后如何删除文件和文件夹?

转载 作者:行者123 更新时间:2023-12-05 00:09:59 27 4
gpt4 key购买 nike

在我们的应用程序中,我们通过我们的应用程序创建了文件夹并在内部存储中存储了一些图像。我想在用户卸载应用程序时删除这些文件夹和图像。

这是我的代码,以及我目前存储的方式:

public void cropImage(Uri sourceUri, String fileName) 
{
File myDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM)
+ File.separator
+ getString(R.string.app_name) + File.separator + getString(R.string.app_name_images) + File.separator);
if (!myDir.exists()) {
myDir.mkdirs();
}
File outputFile = new File(myDir, fileName);

UCrop.of(sourceUri, Uri.fromFile(outputFile)).start(this);
}

最佳答案

好吧,这似乎无法实现,因为我们没有获得任何有关卸载的回调信息。

我在我的职业生涯中尝试过的:

BroadCast Receiver:将无法工作,因为一旦应用程序被卸载,它就不再存在于操作系统中,因此将无法进行广播。

因此他们无法删除在设备的外部存储上创建的文件夹。

您可以做什么:

  • 使用getExternalCacheDir(),创建的文件夹会自动删除当应用程序被卸载时。

  • 如果您的应用目标是 API 级别 8 或更高级别,您可以对外部文件使用 Context#getExternalFilesDir(),这些文件将在卸载时删除。

关于android - App卸载后如何删除文件和文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51257512/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com