【问题标题】:How to get images and videos thumbnails from a path, not working如何从路径中获取图像和视频缩略图,不起作用
【发布时间】:2017-10-11 20:14:36
【问题描述】:

我正在做一种从特定路径获取所有图像和视频的方法,然后获取这些图像和视频的缩略图并将它们放在另一个路径中。我得到了以下信息:

public void getThumbnails(String persistentDataPath) {
    // Get relevant columns for use later.
    String[] projection = {
            MediaStore.Files.FileColumns._ID,
            MediaStore.Files.FileColumns.DATA,
            MediaStore.Files.FileColumns.DATE_ADDED,
            MediaStore.Files.FileColumns.MEDIA_TYPE,
    };

    // Return only video and image metadata.
    String selection = MediaStore.Files.FileColumns.MEDIA_TYPE + "="
            + MediaStore.Files.FileColumns.MEDIA_TYPE_IMAGE
            + " OR "
            + MediaStore.Files.FileColumns.MEDIA_TYPE + "="
            + MediaStore.Files.FileColumns.MEDIA_TYPE_VIDEO;


    Uri queryUri = Uri.parse(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES).toString() + "/Azlo/");
    ContentResolver cr = getContentResolver();

    Cursor cursor = cr.query(
            queryUri,
            projection,
            selection,
            null, // Selection args (none).
            MediaStore.Files.FileColumns.DATE_ADDED + " DESC" // Sort order.
    );
    Bitmap bitmap;
    //Now i will traverse the cursor and get the bitmap thumbnail for every item
    for( int i = 0 ; i < cursor.getCount(); i++) {
        cursor.moveToPosition(i);
        long elementId = cursor.getLong(0);
        // code to get the thumbail using the item id
        // using method MediaStorage.Video.Thumbnails.getThumbnail
        // and MediaStorage.Image.Thumbnails.getThumbnail
    }
}

问题是查询它不起作用并且它返回 null 我不知道为什么。我使用的路径返回“/storage/emulated/0/Movies/AzloAR”,并且该文件夹中有 .mp4 和 .jpg 文件。

你能帮帮我吗? :)

另一个问题,我怎么知道(有条件的)光标的项目是视频还是图像。

【问题讨论】:

标签: java android cursor


【解决方案1】:

我发送给查询的 URI 无效。查询需要 content:// 样式的 URI,这是通过使用 MediaStore 类的方法和字段生成的,例如 MediaStore.Files.getContentUri(String volumeName)MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-10
    • 1970-01-01
    • 2020-11-25
    • 2013-08-13
    • 2013-01-01
    • 2012-03-05
    • 1970-01-01
    • 2015-08-15
    相关资源
    最近更新 更多