NativeScript / NativeScript/plugins

[@nativescript/imagepicker] MediaMetadataRetriever.setDataSource fails with status = 0xFFFFFFEA

Aberta
#657 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
TypeScript
Estrelas
206
Forks
123
Merge médio
2d 1h
PRs com merge (30d)
1

Descrição

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

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece pelo tratamento Android de @nativescript/imagepicker para use_photo_picker e rastreie como item.path é retornado para um vídeo selecionado. Reproduza a falha com MediaMetadataRetriever.setDataSource(item.path) e ThumbnailUtils.createVideoThumbnail; considera-se concluído quando um vídeo selecionado puder ser passado para as APIs Android de metadados ou miniaturas sem o erro de status relatado.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
android, typescript
Domínio
mobile
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.