Device: Samsung S21
Description
When selecting a video using @nativescript/imagepicker, the returned file path is a content:// URI.
Calling Android APIs such as:
android.media.MediaMetadataRetriever.setDataSource(item.path);
or
android.media.ThumbnailUtils.createVideoThumbnail(item.path, ...)
throws:
Error: java.lang.RuntimeException: setDataSource failed: status = 0xFFFFFFEA
This happens because these overloads expect a real filesystem path, not a content:// URI.
Steps to Reproduce
Create imagepicker:
let imagePickerObj = imagePickerPlugin.create({
mode: "multiple", android: { use_photo_picker: true }});
Pick a video from gallery.
Try to generate metadata or thumbnail:
let retriever = new android.media.MediaMetadataRetriever();
retriever.setDataSource(item.path); // crashes