Video Player-grensesnitt med en prøve‑ramme fra Sintel‑traileren.
Video Player-grensesnitt med en prøve‑ramme fra Sintel‑traileren.
© copyright Blender Foundation | durian.blender.org · CC BY 3.0
← Alle innebygde veiledninger

Xodera Plugins · Bubble Native

Xodera Video Player Native

Vis leksjoner, produktdemonstrasjoner og støttede direktestrømmer i appen din, med avspillingskontroller, fullskjerm og tilgjengelige språkspor.

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.

Dokumentasjon gjennomgått 6 november 2026

Praktiske eksempler

Kapittel‑lenker i en opplæringsapp

En elev må kunne spille av ett steg av en demonstrasjon uten å navigere til en ekstern spiller.

`source_url = Current Lesson’s video URL`; `poster_url = Current Lesson’s cover`; hvert kapittel lagrer en app-eid starttid.

Kapittelklikk → hvis du bytter kilde, vent på `source_loaded` → Seek til `position_seconds` → Play. Bruk Set playback rate for en detaljert demonstrasjon og Enter fullscreen når det blir bedt om.

Les `position_seconds`, `duration_seconds` og `is_fullscreen`; arbeidsflyten din lagrer leksjonsfremdrift kun for den nåværende kilden.

Ved `player_error`, vis `error_code`, bevar fremdriften og tilby Reload video. En fullføringshendelse er ikke bevis på at en leksjon eller sikkerhetsvurdering er bestått.

Bruk direkte videofiler eller støttede strømmer. Denne spilleren eksporterer ikke videoer.

Videodemonstrasjoner på markedsplassoppføringer

Et produktbilde alene kan ikke forklare hvordan et element fungerer, men en ekstern video forstyrrer kjøpsflyten.

`source_url = Selected Listing’s demonstration URL`; `poster_url = its thumbnail`; `muted = yes` for en bevisst stille første forhåndsvisning.

Åpne den valgte oppføringen → bind videoen → Play etter en brukerhandling. Tilby Set muted for lyd og Enter fullscreen for nærmere inspeksjon. Bind `is_active` til den synlige detaljen.

Bruk `has_source`, `is_buffering` og `status` for å skille mellom fraværende video, lasting og klar media.

Ved kildeutskifting, slutt å bruke gammel fremdrift og spor valg. Vis en miniatyrfallback når den valgte filen ikke støttes.

Bruk direkte videofiler eller støttede strømmer. Denne spilleren eksporterer ikke videoer.

Velg tilgjengelige språkspor i en støttet strøm

En flerspråklig app må tilby sporene som en bestemt kilde faktisk inneholder.

`source_url = Selected Programme’s accepted stream URL`; kilden må selv levere kompatible lyd-/undertekstspor.

På `tracks_changed`, les den nåværende `audio_tracks_json` og `subtitle_tracks_json`; bygg valg i appen din og kall Select audio track eller Select subtitle track med den nåværende indeksen.

Bruk `selected_audio_index`, `selected_subtitle_index` og `source_generation` for å knytte valget til denne kilden.

Bygg opp valgene på nytt etter hver kildeendring. Hvis et spor mangler eller ikke støttes, behold standardsporet og vis tilgjengeligheten ærlig.

Bruk direkte videofiler eller støttede strømmer. Denne spilleren eksporterer ikke videoer.

Hva fungerer nå

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.

Bygg arbeidsflyten

Bruk de tilgjengelige beta‑handlingene nedenfor og test resultatet på dine mål‑enheter.

Disse eksemplene bruker app‑poster som Lesson, Message og Order. Erstatt dem med dine egne datatyper og elementnavn. Eksempel‑medieadresser må erstattes med dine egne filer.

  1. Angi source_url = Selected Lesson's video_url og poster_url = Selected Lesson's poster_url. Bruk auto eller progressive for en MP4; bruk hls for en HLS‑strøm.

  2. Etter playback_ready, bruk Seek for å gjenoppta på lagret position_seconds. Brukeren starter Play. Angi is_active til om leksjonsvisningen er åpen.

  3. Legg til Play, Pause, Seek, Set playback rate og Enter fullscreen‑kontroller. Vis position_seconds og duration_seconds.

  4. Etter tracks_changed, vis de tilgjengelige audio_tracks_json‑ og subtitle_tracks_json‑valgene for denne videoen. Send den valgte indeksen til Select audio track eller Select subtitle track. Ved hendelsen ended, lagre fremdriften.

Arbeidsflytdiagram — ikke et app‑skjermbilde

Konfigurer én gang

Opprett eller velg ditt Bubble‑app‑prosjekt i BestPlugins → Dashboard → Plugins. Velg Xodera Video Player Native, kopier nøkkelen, åpne deretter Bubble → Plugins → Xodera Video Player Native og lim den inn i licensing_api_key. Lagre én gang; bruk deretter handlingene nedenfor. Hver plugin i hvert prosjekt har sin egen nøkkel.

Bruk en direkte video‑ eller strømmeadresse. En YouTube‑ eller Vimeo‑nettsideadresse er ikke en direkte videofil. Avspilling krever ingen kamera‑ eller mikrofon‑tilgang.

Konfigurer én gang
  1. Opprett eller velg ditt Bubble‑app‑prosjekt på BestPlugins → Dashboard → Plugins.
  2. Velg denne plugin‑en og kopier prosjekt‑nøkkelen.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Legg til elementet, velg app‑dataene dine og bygg arbeidsflyten nedenfor.
  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.
Installasjon og abonnement

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.

Lagre resultatet i appen din

Eksempel WatchProgress: owner = Current User, lesson = Selected Lesson, seconds = Video Player's position_seconds, duration = Video Player's duration_seconds. Lagre kun for den nåværende valgte videoen. Spor‑indekser tilhører den videoen og bør ikke lagres som permanente språkvalg.

Feil, avbryt og gjenoppretting

På player_error, vis error_code og tilby Reload video. Den lastes inn på nytt uten å starte avspilling. Å velge en annen kilde fjerner de gamle sporvalgene. Å forlate visningen pauser videoen; brukeren trykker på Play for å fortsette.

Funksjoner og begrensninger

Hastigheter: 0.5, 1, 1.5 og 2. Volum: 0–1. Formater: auto, progressive, HLS og kun Android‑DASH. Tilgjengelige spor avhenger av filen. Bruk -1 for å slå av et spor; -2 betyr ukjent og kan ikke velges. Ingen redigering, videoeksport, DRM, bilde‑i‑bilde eller permanent offline‑buffer.

Innstillinger, handlinger og resultater

Bruk disse navnene i Bubble. Planlagte funksjoner er merket separat.

Tilgjengelige beta‑innstillinger

Elementinnstillinger

source_url · textposter_url · textcontent_type · textrate · numbervolume · numbermuted · yes/noloop · yes/nois_active · yes/nodisabled · yes/nonative_controls · yes/noui_text_json · textlanguage · text

Tilstander

is_playing · yes/nois_buffering · yes/nopending_play · yes/nois_live · yes/nomuted · yes/noloop · yes/nohas_source · yes/nois_fullscreen · yes/noposition_seconds · numberduration_seconds · numbervolume · numberrate · numbersource_generation · numberselected_audio_index · numberselected_subtitle_index · numberstatus · textaudio_tracks_json · textsubtitle_tracks_json · texterror_code · texterror_message · text

Hendelser

source_changedsource_loadedplayback_readyplaying_changedtime_changedendedtracks_changedfullscreen_changedplayer_error

Handlinger og deres innganger

PlayPauseStop and rewindReload videoSeekSet volumeSet mutedSet playback rateEnter fullscreenSelect audio trackSelect subtitle track
Elementinnstillinger · 12
source_urltext · Standard: ""
Eksempelverdihttps://bestplugins.online/native-samples/lesson.mp4
Eksempel Bubble uttrykkSelected Lesson's video_url
Adresse til den valgte lyd-, video- eller bildefilen. Bruk en filtype som dette plugin‑programmet støtter.
poster_urltext · Standard: ""
Eksempelverdihttps://bestplugins.online/native-samples/poster.jpg
Eksempel Bubble uttrykkSelected Lesson's poster_url
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
content_typetext · Standard: "auto"
Eksempelverdiauto
Eksempel Bubble uttrykkSelected Lesson's video_content_type
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
ratenumber · Standard: 1
Eksempelverdi1.5
Eksempel Bubble uttrykkSpeed Dropdown's value
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
volumenumber · Standard: 1
Eksempelverdi0.8
Eksempel Bubble uttrykkVolume Slider's value
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
mutedyes/no · Standard: false
Eksempelverdino
Eksempel Bubble uttrykkMute Checkbox is checked
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
loopyes/no · Standard: false
Eksempelverdino
Eksempel Bubble uttrykkSelected Lesson's repeat_enabled
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
is_activeyes/no · Standard: true
Eksempelverdiyes
Eksempel Bubble uttrykkGuideHost's view_is_active (your yes/no custom state)
Sett ja mens denne visningen er åpen. Sett nei ved avslutning, slik at avspilling eller pågående arbeid kan stoppes.
disabledyes/no · Standard: false
Eksempelverdino
Eksempel Bubble uttrykkGuideHost's is_busy (your yes/no custom state)
Deaktiver elementet mens appen din er opptatt eller handlingen er utilgjengelig.
native_controlsyes/no · Standard: false
Eksempelverdino
Eksempel Bubble uttrykkApp Settings' use_native_video_controls
Vis eller skjul enhetens standard videokontroller.
ui_text_jsontext · Standard: "{}"
Eksempelverdi{}
Eksempel Bubble uttrykkApp Settings' player_labels_json (supported keys only)
Valgfri JSON med støttede knappetiketter. La stå tomt for å bruke den innebygde teksten.
languagetext · Standard: "auto"
Eksempelverdiuk
Eksempel Bubble uttrykkCurrent User's preferred_language
Sett language=auto til å følge en støttet enhet eller nettleserspråk. Skriv inn en støttet språkkode for å velge den eksplisitt.
Handlinger og deres innganger · 11
Play

Ingen handlingsparametere

Pause

Ingen handlingsparametere

Stop and rewind

Ingen handlingsparametere

Reload video

Ingen handlingsparametere

Seek
position_secondsnumber · Standard: —
Eksempelverdi45
Eksempel Bubble uttrykkSelected Chapter's start_seconds
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Set volume
volumenumber · Standard: —
Eksempelverdi0.8
Eksempel Bubble uttrykkVolume Slider's value
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Set muted
mutedyes/no · Standard: —
Eksempelverdino
Eksempel Bubble uttrykkMute Checkbox is checked
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Set playback rate
ratenumber · Standard: —
Eksempelverdi1.5
Eksempel Bubble uttrykkSpeed Dropdown's value
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Enter fullscreen

Ingen handlingsparametere

Select audio track
indexnumber · Standard: —
Eksempelverdi0
Eksempel Bubble uttrykkSelected row's current_source_index
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Select subtitle track
indexnumber · Standard: —
Eksempelverdi0
Eksempel Bubble uttrykkSelected row's current_source_index
Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Tilstander og hendelser

Tilstander

is_playing · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

is_buffering · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

pending_play · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

is_live · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

muted · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

loop · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

has_source · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

is_fullscreen · yes/no

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

position_seconds · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

duration_seconds · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

volume · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

rate · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

source_generation · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

selected_audio_index · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

selected_subtitle_index · number

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

status · text

Nåværende resultat av denne handlingen. Bruk den tilsvarende fullføringshendelsen før du lagrer suksess. idle,loading,readyToPlay,error

audio_tracks_json · text

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

subtitle_tracks_json · text

Nåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.

error_code · text

Feilinformasjon for den siste handlingen. Vis en hjelpsom melding og tilby relevant gjenforsøk.

error_message · text

Feilinformasjon for den siste handlingen. Vis en hjelpsom melding og tilby relevant gjenforsøk.

Hendelser

source_changed

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

source_loaded

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

playback_ready

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

playing_changed

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

time_changed

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

ended

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

tracks_changed

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

fullscreen_changed

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

player_error

Når denne hendelsen oppstår, les de relaterte tilstandene fra samme element.

Spørsmål utviklere stiller

Kan jeg eksportere det valgte segmentet?

Nei. Seek og fullskjerm endrer avspilling, ikke videobyter.

Hvordan fungerer abonnementet?

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.

Relaterte veiledninger

For hjelp, fortell oss hvilken plugin og enhet du bruker, handlingen du prøvde og hva som skjedde. Bruk et eksempel uten personlige data. Del aldri nøkkelen din eller private filer.