NativeScript / NativeScript/plugins
[@nativescript/imagepicker] MediaMetadataRetriever.setDataSource fails with status = 0xFFFFFFEA
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 206
- Forks
- 123
- Merge moyen
- 2 j 1 h
- PR mergées (30 j)
- 1
Description
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
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le traitement Android de @nativescript/imagepicker pour use_photo_picker et suivez la manière dont item.path est renvoyé pour une vidéo sélectionnée. Reproduisez l’échec avec MediaMetadataRetriever.setDataSource(item.path) et ThumbnailUtils.createVideoThumbnail ; le travail est terminé lorsqu’une vidéo sélectionnée peut être transmise aux API Android de métadonnées ou de miniatures sans l’erreur d’état signalée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- android, typescript
- Domaine
- mobile
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 38/100