簡體   English   中英

在android中顯示SD卡中特定文件夾中的所有視頻

[英]Display all the video from a specific folder in SD card in android

我在顯示SD卡文件夾中的所有視頻時遇到問題。 目前,我可以顯示SD卡中可以找到的所有視頻,但是我想做的是在SD卡中的“ PartyVideo”文件夾中顯示所有視頻。 您能幫我嗎?下面是我的代碼,可顯示SD卡中的所有視頻。

final String[] columns = { MediaStore.Video.Media.DATA, MediaStore.Video.Media._ID };
    final String orderBy   = MediaStore.Video.Media.DATE_TAKEN;
    Cursor imagecursor     = managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, columns, null,null, orderBy + " DESC");
    int image_column_index = imagecursor.getColumnIndex(MediaStore.Video.Media._ID);
    this.count             = imagecursor.getCount();
    this.thumbnails        = new Bitmap[this.count];
    this.arrPath           = new String[this.count];
    this.thumbnailsselection = new boolean[this.count];
    for (int i = 0; i < this.count; i++) 
    {
        imagecursor.moveToPosition(i);
        int id = imagecursor.getInt(image_column_index);
        int dataColumnIndex = imagecursor.getColumnIndex(MediaStore.Video.Media.DATA);
        thumbnails[i] = MediaStore.Video.Thumbnails.getThumbnail(
                getApplicationContext().getContentResolver(), id,
                MediaStore.Video.Thumbnails.MICRO_KIND, null);
        arrPath[i]= imagecursor.getString(dataColumnIndex);
    }
    GridView imagegrid = (GridView) findViewById(R.id.grid_GalleryImage);
    imageAdapter = new ImageAdapter();
    imagegrid.setAdapter(imageAdapter);

我嘗試了許多不同的代碼,並最終獲得了這一代碼。 下面的代碼將所有視頻都保存在我想要的文件夾中,但我不知道如何顯示它。

String[] fileList = null;
     File videoFiles = new File(Environment.getExternalStorageDirectory()+"/PartyVideo");

        if(videoFiles.isDirectory())
        {
            fileList=videoFiles.list();
        }

       for(int i=0;i<fileList.length;i++)
       {
           Log.e("Video:"+i+" File name",fileList[i]);
       }

使用此文件瀏覽器庫瀏覽文件,並將視頻類型的過濾器放入以下代碼中

Intent intent = new Intent(getBaseContext(), FileDialog.class);
intent.putExtra(FileDialog.START_PATH, "/sdcard");

 //can user select directories or not
intent.putExtra(FileDialog.CAN_SELECT_DIR, true);

 //alternatively you can set file filter
intent.putExtra(FileDialog.FORMAT_FILTER, new String[] { "avi" });

startActivityForResult(intent, REQUEST_SAVE);

嘗試這個

Cursor videocursor = getActivity().getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
                        columns,
                        MediaStore.Video.Media.DATA + " like ? ",
                        new String[]{"%/" + Your folder name + "/%"},
                        null);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM