Android的删除文件MediaScannerConnection(Android Deletin

2019-10-17 03:14发布

我试图删除内部存储器(华硕TF101)某些文件或目录使用的命令File.delete()。 然而,使用Android文件资源管理器,我可以看到文件的方式去除,但使用Windows资源管理器中,他们仍然显示在那里。

添加文件只是创建MediaScannerConection(以及使用该方法SCANFILE),当我解决了类似的问题。

有谁知道如何解决这个问题? 当然it's不能接受重新启动设备作为最终用户不会喜欢这个“解决方案”。

Answer 1:

请参阅本主题MANISHA的答案: Android的文件删除叶画廊空的占位符

就我而言,它工作得很好,因为我是在储存照片,然后使用MediaScannerConnection扫描,所以当扫描结束后我有一个文件的URI,然后我可以使用下面的代码whitout问题。

getContentResolver().delete(imageUri, null, null);

希望这对你的作品。 这似乎是比通过发送意图到Android系统中强制SD卡以重新更适合。



Answer 2:

我有同样的问题,但我发现answear:

Android使用媒体表来处理文件。 当您更改到一个文件,你必须更新此表。

尝试这个:

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + Environment.getExternalStorageDirectory())));

谷歌文档: http://developer.android.com/reference/android/content/Intent.html#ACTION_MEDIA_MOUNTED



文章来源: Android Deleting Files MediaScannerConnection