删除的视频正在Android Studio代码的视频播放器中显示
我正在Android Studio中创建一个视频播放器,并使用视频视图。 但我在这里面临一个问题 假设我手机上有5个视频,那么所有的视频都会显示出来。 但当我从手机中删除1个视频时。即使我重新启动应用程序,它仍然可见 这是应用程序的屏幕截图 当我的手机上有5个视频时 当我删除一个视频时 编码如何从内部和SD卡访问文件删除的视频正在Android Studio代码的视频播放器中显示,android,android-videoview,android-video-player,Android,Android Videoview,Android Video Player,我正在Android Studio中创建一个视频播放器,并使用视频视图。 但我在这里面临一个问题 假设我手机上有5个视频,那么所有的视频都会显示出来。 但当我从手机中删除1个视频时。即使我重新启动应用程序,它仍然可见 这是应用程序的屏幕截图 当我的手机上有5个视频时 当我删除一个视频时 编码如何从内部和SD卡访问文件 public void getFile(File directtory) { File[] listFile = directtory.listFiles();
public void getFile(File directtory) {
File[] listFile = directtory.listFiles();
if (listFile != null && listFile.length > 0) {
for (File file : listFile) {
if (file.isDirectory()) {
getFile(file);
} else {
permission = false;
if (file.getName().endsWith(".mp4") || file.getName().endsWith(".mkv") )
{
for (int j = 0; j < list.size(); j++) {
if (list.get(j).getName().equals(file.getName())) {
permission = true;
}
}
if (permission) {
permission = false;
} else {
list.add(file);
}
}
}
}
}
public void getFile(文件目录){
File[]listFile=directory.listFiles();
if(listFile!=null&&listFile.length>0){
用于(文件:listFile){
if(file.isDirectory()){
getFile(文件);
}否则{
许可=假;
if(file.getName().endsWith(“.mp4”)| | file.getName().endsWith(“.mkv”))
{
对于(int j=0;j
是,因为您的文件已从存储中删除,但未从android媒体存储中删除。请使用以下功能从媒体存储中删除视频文件
public static void scanDeletedMedia(Context context, File file) {
if (SDK_INT >= 19) {
context.getContentResolver().delete(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, MediaStore.Video.Media.DATA + "= ?", new String[]{file.getAbsolutePath()});
} else {
context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.fromFile(file)));
}
}
你在不同的设备上遇到过同样的问题吗?是的,我也遇到过同样的问题