Interface Audio Player con un título de exemplo.
Interface Audio Player con un título de exemplo.
← Todas as guías nativas

Xodera Plugins · Bubble Native

Xodera Audio Player Native

Engada un reprodutor de audio claro ás leccións, mensaxes de voz ou rexistros de produtos. Permita que as persoas escoiten, cambien a velocidade e continúen desde o seu punto gardado.

Public beta guides · Haptics instructions are in its Bubble listing

Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.

Documentación revisada 6 novembro 2026

Exemplos prácticos

Notas de voz dentro dunha conversación de soporte

Un enlace a un ficheiro simple envía aos usuarios fóra da conversación e dificulta a revisión de respostas longas.

`source_url = Selected Message’s audio URL`; `title = Selected Message’s sender label`; `subtitle = Selected Message’s timestamp`.

Coloque o reprodutor no detalle da mensaxe seleccionada. Deixe ao usuario Play/Pause, Seek a un punto útil e Set speed. Enlace `is_active` á conversación aberta.

Utilice `is_playing`, `current_time` e `duration` para mostrar o progreso. Mantña o ID Message na súa aplicación para que un evento tardío non poida actualizar outra conversación.

En `player_error`, mostre `error_code` e ofreza Reload source; preserve a mensaxe e nunca a marque como escoitada despois dun erro.

Só reprodución. A súa aplicación garda o progreso de escoita.

Retome unha lección de idioma na posición gardada

Os aprendices necesitan reproducir un pasaxe difícil en vez de reiniciar toda a lección.

`source_url = Current Lesson’s audio URL`; `title = Current Lesson’s name`; a última posición pertence a ese aprendiz e lección na súa base de datos.

Despois de `ready` para a lección actual, Seek aos segundos gardados e espere a que o usuario Play. Use Set speed para escoita máis lenta. Garde o progreso co fluxo de traballo da súa propia aplicación.

Lea `current_time` e `duration`. En `playback_ended`, a súa aplicación pode rexistrar un hito de escoita para o actual Lesson.

Se a fonte cambiou, descarte a posición antiga ata que se cargue esa lección. Non trate a finalización da escoita como prova de que o aprendiz entendeu ou aprobou unha proba.

Só reprodución. A súa aplicación garda o progreso de escoita.

Revise un anexo de audio con comentarios con marca de tempo

Os editores ou formadores necesitan saltar dun comentario ao momento relevante nunha gravación.

`source_url = Selected Review’s recording URL`; cada Comentario pertencente á aplicación almacena o seu propio valor en segundos; o opcional `waveform_peaks_json` contén picos reais para esa mesma gravación.

Faga clic nun Comentario → Seek aos seus segundos → Play. Ao cambiar a fonte, substitúa ou limpe os picos e volva enlazar a Revisión seleccionada.

Mostre `current_time` ao lado do seu compositor de comentarios. `waveform_available` indica á súa IU se os picos reais fornecidos están dispoñibles.

Restrinxe ou rexeita marcas de tempo obsoletas contra a duración actual na túa aplicación. Cando non existan picos reais, mostra o control de progreso ordinario en lugar da análise de audio inventada.

Só reprodución. A súa aplicación garda o progreso de escoita.

O que funciona agora

Public beta. Use the documented controls and actions; test supported formats, permissions and device behavior in your own native app. Browser preview does not validate native device output.

Crea o fluxo de traballo

Utilice as accións beta dispoñibles a continuación e probe o resultado nos seus dispositivos de destino.

Estes exemplos usan rexistros de aplicación como Lesson, Message e Order. Substitúeaos polos seus propios tipos de datos e nomes de elementos. Os enderezos de medios de exemplo deben substituírse polos seus propios ficheiros.

  1. Engada o elemento de audio. Defina source_url = Selected Message's audio_url, title = Selected Message's sender_label e subtitle = Selected Message's date_label.

  2. Se ten datos reais da forma de onda para esta gravación, páselos en waveform_peaks_json. En caso contrario, déixeo baleiro.

  3. Cando se produce o evento ready, use Seek co número de segundos gardado se é necesario. Permita que o usuario pulse Play. Use Pause, Seek e Set speed para os botóns do reprodutor.

  4. Mostre current_time e duration. En playback_ended, garde o progreso de escoita para a mensaxe ou lección seleccionada. Defina is_active segundo se esta vista está aberta.

Diagrama do fluxo de traballo — non é unha captura de pantalla da aplicación

Configura unha vez

Cree ou escolla o seu proxecto de aplicación Bubble en BestPlugins → Dashboard → Plugins. Escolla Xodera Audio Player Native, copie a súa clave, despois abra Bubble → Plugins → Xodera Audio Player Native e péguela en licensing_api_key. Guarde unha vez; a seguir utilice as accións a continuación. Cada complemento en cada proxecto ten a súa propia clave.

Utilice un enderezo directo a un ficheiro de audio que a aplicación poida abrir. Reproducir audio non require acceso ao micrófono nin á cámara.

Configura unha vez
  1. Cree ou escolla o seu proxecto de aplicación Bubble en BestPlugins → Dashboard → Plugins.
  2. Escolla este complemento e copie a súa clave de proxecto.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Engada o elemento, escolla os datos da súa aplicación e constrúa o fluxo de traballo a continuación.
  5. In the dashboard, review and confirm the 7-day card trial for this plugin. It then costs US$1.50/month per app project, including development and production. Cancel before the trial ends to avoid the first charge.
Instalación e subscrición

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

Garde o resultado na súa aplicación

Exemplo ListeningProgress: owner = Current User, lesson = Selected Lesson, seconds = Audio Player's current_time, duration = Audio Player's duration. Guarde cando o usuario pausa ou abandona a lección, en lugar de en cada actualización da pantalla.

Fallo, cancelación e recuperación

En player_error, mostre error_code e ofreza Reload source. Mantén o rexistro da mensaxe ou lección. Cando se selecciona unha gravación diferente, cargue a súa propia posición gardada. Volver á vista non inicia a reprodución automaticamente.

Capacidades e límites

Velocidades de reprodución: 1, 1.5 e 2. Volume: 0–1. Datos da forma de onda: valores 2–2048 entre 0 e 1. Os formatos de audio admitidos dependen do dispositivo. O reprodutor non grava, transcribe nin garda permanentemente audio para uso sen conexión. A reprodución en segundo plano e na pantalla de bloqueo non están garantidas.

Configuracións, accións e resultados

Utilice estes nomes en Bubble. As funcionalidades planificadas están marcadas por separado.

Configuracións beta dispoñibles

Configuración do elemento

source_url · textwaveform_peaks_json · texttitle · textsubtitle · textplayback_rate · numbervolume · numberloop · yes_nois_active · yes_nodisabled · yes_noui_text_json · textlanguage · text

Estados

player_status · textis_playing · yes_nois_loaded · yes_nois_buffering · yes_nocurrent_time · numberduration · numberprogress · numberplayback_rate · numbervolume · numberis_looping · yes_nowaveform_available · yes_nowaveform_status · texterror_code · text

Eventos

readyplayback_startedplayback_pausedplayback_endedseek_completedrate_changedplayer_error

Accións e as súas entradas

PlayPauseToggleStopSeekSet speedSet volumeReload source
Configuración do elemento · 11
source_urltext · Predeterminado: ""
Valor de exemplohttps://bestplugins.online/native-samples/lesson.mp3
Exemplo de expresión BubbleSelected Message's audio_url
Enderezo do ficheiro de audio, vídeo ou imaxe seleccionado. Usa un tipo de ficheiro que este complemento admita.
waveform_peaks_jsontext · Predeterminado: ""
Valor de exemplo[0.1,0.4,0.2,0.7]
Exemplo de expresión BubbleSelected Message's waveform_peaks_json
Valores reais de amplitude normalizada para esta gravación; déixao baleiro se non está dispoñible.
titletext · Predeterminado: ""
Valor de exemploLesson 4 — review
Exemplo de expresión BubbleSelected Lesson's name
Texto visible da aplicación; baleiro usa a copia localizada incorporada onde se admita. Sen credenciais.
subtitletext · Predeterminado: ""
Valor de exemploTeacher · today
Exemplo de expresión BubbleSelected Message's sender_label
Texto visible da aplicación; baleiro usa a copia localizada incorporada onde se admita. Sen credenciais.
playback_ratenumber · Predeterminado: 1
Valor de exemplo1.5
Exemplo de expresión BubbleCurrent User's listening_speed
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
volumenumber · Predeterminado: 1
Valor de exemplo0.8
Exemplo de expresión BubbleVolume Slider's value
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
loopyes_no · Predeterminado: false
Valor de exemplono
Exemplo de expresión BubbleSelected Lesson's repeat_enabled
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
is_activeyes_no · Predeterminado: true
Valor de exemployes
Exemplo de expresión BubbleGuideHost's view_is_active (your yes/no custom state)
Establece sí mentres esta vista está aberta. Establece non ao saír, para que a reprodución ou o traballo actual poidan detenerse.
disabledyes_no · Predeterminado: false
Valor de exemplono
Exemplo de expresión BubbleGuideHost's is_busy (your yes/no custom state)
Desactiva o elemento mentres a túa aplicación está ocupada ou esta acción non está dispoñible.
ui_text_jsontext · Predeterminado: ""
Valor de exemplo{}
Exemplo de expresión BubbleApp Settings' player_labels_json (supported keys only)
JSON opcional con etiquetas de botón compatibles. Déixao baleiro para usar o texto incorporado.
languagetext · Predeterminado: "auto"
Valor de exemplouk
Exemplo de expresión BubbleCurrent User's preferred_language
Establece language=auto para seguir un dispositivo ou idioma de navegador compatible. Introduce un código de idioma compatible para elixilo explicitamente.
Accións e as súas entradas · 8
Play

Sen parámetros de acción

Pause

Sen parámetros de acción

Toggle

Sen parámetros de acción

Stop

Sen parámetros de acción

Seek
secondsnumber · Predeterminado: —
Valor de exemplo12
Exemplo de expresión BubbleSelected Comment's seconds
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
Set speed
ratenumber · Predeterminado: —
Valor de exemplo1.5
Exemplo de expresión BubbleSpeed Dropdown's value
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
Set volume
volumenumber · Predeterminado: —
Valor de exemplo0.8
Exemplo de expresión BubbleVolume Slider's value
Utiliza o valor do rexistro empresarial actual; valídalo contra os límites abaixo.
Reload source

Sen parámetros de acción

Estados e eventos

Estados

player_status · text

Resultado actual desta acción. Usa o evento de finalización coincidente antes de gardar o éxito.

is_playing · yes_no

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

is_loaded · yes_no

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

is_buffering · yes_no

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

current_time · number

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

duration · number

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

progress · number

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

playback_rate · number

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

volume · number

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

is_looping · yes_no

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

waveform_available · yes_no

Valor actual do elemento seleccionado. Léelo despois do evento relacionado.

waveform_status · text

Resultado actual desta acción. Usa o evento de finalización coincidente antes de gardar o éxito.

error_code · text

Información de erro da última acción. Mostra unha mensaxe útil e ofrece o reintento correspondente.

Eventos

ready

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

playback_started

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

playback_paused

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

playback_ended

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

seek_completed

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

rate_changed

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

player_error

Cando ocorra este evento, lea os estados relacionados do mesmo elemento.

Preguntas que os desenvolvedores fan

Crea a forma de onda?

Non. Proporcione picos normalizados reais para esa fonte; o progreso ordinario funciona sen eles.

Como funciona a subscrición?

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

Guías relacionadas

Para obter axuda, indícanos que complemento e dispositivo utilizas, a acción que intentaches e o que sucedeu. Usa un exemplo sen datos persoais. Nunca compartas a túa clave ou ficheiros privados.