我想将新创建的视频文件保存在Gallery dir下,我找到了这种方法
https://stackoverflow.com/a/11746999/5709159
@Nullable
public Uri addVideo(@NonNull final File videoFile, @NonNull final String iVideoName) {
ContentValues values = new ContentValues(3);
values.put(MediaStore.Video.Media.TITLE, iVideoName);
values.put(MediaStore.Video.Media.MIME_TYPE, "video/mp4");
values.put(MediaStore.Video.Media.DATA, videoFile.getAbsolutePath());
return getApplication().getContentResolver().insert(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, values);
}
但是我注意到所有保存的视频文件都没有保存时间,就像打开图库一样,您可以找到您的视频文件,但是在视频文件上看到的时间是00:00
,但是如果打开该文件具有完整的视频时长(例如15秒)。
我发现还有一个MediaStore.Video.Media.DURATION
值可以设置为ContentValues
的另一个值,例如:
values.put(MediaStore.Video.Media.DURATION, 20);
但是随后我得到警告,可能从Q android版本使用此值DURATION
...
那么,其他设备的解决方案是什么?