android - 在 Android Q 中从 Sdcard 生成缩略图

标签 android video android-10.0

我正在使用以下方法生成缩略图(在 android 10 中已弃用)

thumbnail_bitmap = ThumbnailUtils.createVideoThumbnail(path, MediaStore.Video.Thumbnails.FULL_SCREEN_KIND);

像这样获取异常

java.io.IOException: Failed to create thumbnail

谢谢。

最佳答案

这是从存储中生成视频缩略图的解决方案。

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.Q) {

            thumbnail_bitmap = createThumbnail(RecordPitchActivity.this, path);

        } else {
            thumbnail_bitmap = ThumbnailUtils.createVideoThumbnail(path, MediaStore.Video.Thumbnails.FULL_SCREEN_KIND);
        }
public static Bitmap createThumbnail(Activity activity, String path) {
        MediaMetadataRetriever mediaMetadataRetriever = null;
        Bitmap bitmap = null;
        try {
            mediaMetadataRetriever = new MediaMetadataRetriever();
            mediaMetadataRetriever.setDataSource(activity, Uri.parse(path));
            bitmap = mediaMetadataRetriever.getFrameAtTime(1000, MediaMetadataRetriever.OPTION_CLOSEST_SYNC);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (mediaMetadataRetriever != null) {
                mediaMetadataRetriever.release();
            }
        }
        return bitmap;
    }

关于android - 在 Android Q 中从 Sdcard 生成缩略图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65005765/

相关文章:

android - 同一个 RadioGroup 中的 RadioButtons,但可以选择两个按钮

android - arm-linux-androideabi-g++ 找不到 header cstdarg

audio - 使用 FFmpeg 将音频输入与视频混合到特定位置

ios - 如何在 ios 中为大 Sprite 制作动画?

ios - MPMoviePlayerViewController 以不寻常的外观锁定应用程序?

android - GPS跟踪的前台服务在一段时间后停止工作

android - 关闭应用程序后永久存储布局更改

android - 如何使用 AngularJS 从 Android Phonegap 应用程序的 www 文件夹中读取 JSON 文件

android - 将文件写入 Android Q 中可公开访问的文档文件夹 - Scoped Storage

android - WifiP2pManager.discoverPeers 在 android 10 中失败