CainKernel / CainCamera

CainCamera is an Android Project to learn about development of beauty camera, image and short video
2.84k stars 777 forks source link

保存到相册问题 #142

Closed ljmkimqx closed 3 years ago

ljmkimqx commented 3 years ago

项目里我没有发现保存到相册的功能,而且我自己尝试保存到相册,先保存到自定义文件夹,然后用ContentValues方式保存到相册,但无论是视频还是图片,在相册里打开都一直是loading的样子,有点像格式损坏那种样子。(在自定义文件夹中是可以正常查看到录制的视频的)。 测试手机:华为nova6, android10

保存视频的代码 ` public void saveVideoFile(int width, int height, final String path) {

    File file = new File(path);
    ContentValues values = new ContentValues(10);
    values.put(MediaStore.Video.VideoColumns.TITLE, file.getName());
    values.put(MediaStore.MediaColumns.WIDTH, width);
    values.put(MediaStore.MediaColumns.HEIGHT, height);
    values.put(MediaStore.Video.VideoColumns.DISPLAY_NAME, file.getName() + ".mp4");
    values.put(MediaStore.Video.VideoColumns.DATE_TAKEN, System.currentTimeMillis());
    values.put(MediaStore.Video.VideoColumns.MIME_TYPE, "video/mp4");
    values.put(MediaStore.Video.VideoColumns.DATA, file.getAbsolutePath());
    values.put(MediaStore.Video.VideoColumns.SIZE, file.length());

    appContext.getContentResolver().insert(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, values);
}

`

ljmkimqx commented 3 years ago

找到原因了 要添加 android:requestLegacyExternalStorage="true"