首页 > 解决方案 > 我正在使用 MediaStore.Video 在手机上获取视频,但它只显示 3gp 和 MP4 视频

问题描述

我想创建一个视频播放器应用程序,所以我必须在我的应用程序上从手机中获取和显示视频。我使用 MediaStore.Video 来获取视频,但我注意到只获取了 3gp 和 MP4 视频扩展格式,我如何从手机中获取所有视频扩展(所有视频格式)这是我之前使用的代码

        Uri uri=MediaStore.Video.Media.EXTERNAL_CONTENT_URI; 
        String orderBy=MediaStore.Video.Media.DATE_ADDED; 
        String[] projection = {MediaStore.Video.Media._ID,MediaStore.Video.Media.TITLE,MediaStore.Video.Thumbnails.DATA  , MediaStore.Video.Media.SIZE, MediaStore.Video.Media.DISPLAY_NAME, MediaStore.Video.Media.DURATION};

Cursor cursor=getActivity().getContentResolver().query(uri,null,null,null,orderBy); 
        if(cursor!=null && cursor.moveToNext()){ 
            do{ 

                String id=cursor.getString(cursor.getColumnIndex(MediaStore.Video.VideoColumns._ID));  
                String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.VideoColumns.TITLE));  
                String displayName=cursor.getString(cursor.getColumnIndex(MediaStore.Video.VideoColumns.DISPLAY_NAME));  
                String size=cursor.getString(cursor.getColumnIndex(MediaStore.Video.VideoColumns.SIZE));  
                String duration=cursor.getString(cursor.getColumnIndex(MediaStore.Video.VideoColumns.DURATION));  
                String path=cursor.getString(cursor.getColumnIndex(MediaStore.Video.VideoColumns.DATA));  
                String dateAdded=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.VideoColumns.DATE_ADDED));  
                String video_thumb=cursor.getString(cursor.getColumnIndex(MediaStore.Video.Thumbnails.DATA));  
                
                MediaFiles mediaFiles=new MediaFiles(video_thumb, id,title,duration,size,dateAdded,displayName,path);   
                videoFiles.add(mediaFiles); 
            }while(cursor.moveToNext());```

Please is there no way I can fetch all types of Videos using this code. Anyone help with any other way to fetch all types of Videos

标签: javaandroidvideomediastore

解决方案


推荐阅读