Video Player ndërfaqe me një kornizë shembull nga trailer-i i Sintel.
Video Player ndërfaqe me një kornizë shembull nga trailer-i i Sintel.
© copyright Blender Foundation | durian.blender.org · CC BY 3.0
← Të gjithë udhëzuesit për shtojcat native

Xodera Plugins · Bubble Native

Xodera Video Player Native

Shfaqni mësime, demonstrime produkti dhe transmetime të drejtpërdrejta të mbështetura brenda aplikacionit tuaj, me kontrolle riprodhimi, ekran të plotë dhe pista gjuhësore të disponueshme.

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.

Dokumentacioni i rishikuar 6 November 2026

Shembuj praktikë

Lidhje kapitujsh në një aplikacion trajnimi

Një nxënës ka nevojë të riprodhojë një hap të demonstrimit pa u zhvendosur në një lojtës të jashtëm.

`source_url = Current Lesson’s video URL`; `poster_url = Current Lesson’s cover`; çdo Chapter ruan një kohë fillimi të pronësuar nga aplikacioni.

Klikim kapitulli → nëse ndryshon burimi, prisni për `source_loaded` → Seek në `position_seconds` → Play. Përdorni Set playback rate për një demonstrim të detajuar dhe Enter fullscreen kur kërkohet.

Lexoni `position_seconds`, `duration_seconds` dhe `is_fullscreen`; rrjedha juaj e punës ruan progresin e mësimit vetëm për burimin aktual.

Në `player_error`, shfaqni `error_code`, ruani progresin dhe ofroni Reload video. Një ngjarje përfundimi nuk është provë se është kaluar një mësim ose vlerësim sigurie.

Përdorni skedarë video të drejtpërdrejtë ose transmetime të mbështetura. Ky lojtës nuk eksporton video.

Demonstrime video në listimet e tregut

Një imazh produkti vetëm nuk mund të shpjegojë si funksionon një artikull, por një video jashtë faqes ndërpret rrjedhën e blerjes.

`source_url = Selected Listing’s demonstration URL`; `poster_url = its thumbnail`; `muted = yes` për një paraprak të parë që është qëllimisht i heshtur.

Hapni rekordin Listing të zgjedhur → lidhni videon e tij → Play pas një veprimi të përdoruesit. Ofroni Set muted për zë dhe Enter fullscreen për inspektim më të afërt. Lidhni `is_active` me faktin nëse pamja e detajeve është e dukshme.

Përdorni `has_source`, `is_buffering` dhe `status` për të dalluar një video të munguar, ngarkim dhe media gati.

Kur zëvendësohet burimi, ndaloni aplikimin e progresit të vjetër dhe zgjedhjet e pistës. Shfaqni një miniaturë rezervë kur skedari i zgjedhur nuk mbështetet.

Përdorni skedarë video të drejtpërdrejtë ose transmetime të mbështetura. Ky lojtës nuk eksporton video.

Zgjidh pistat e gjuhës së disponueshme në një transmetim të mbështetur

Një aplikacion shumëgjuhësh duhet të ofrojë pistat që një burim i caktuar në fakt përmban.

`source_url = Selected Programme’s accepted stream URL`; burimi vetë duhet të sigurojë pista audio/titrash të përputhshme.

Në `tracks_changed`, lexoni `audio_tracks_json` dhe `subtitle_tracks_json` aktuale; krijoni zgjedhjet në aplikacionin tuaj dhe thërrisni Select audio track ose Select subtitle track me indeksin aktual.

Përdorni `selected_audio_index`, `selected_subtitle_index` dhe `source_generation` për të lidhur zgjedhjen me këtë burim.

Rikrijoni zgjedhjet pas çdo ndryshimi të burimit. Nëse një pistë mungon ose nuk mbështetet, mbani pistën parazgjedhur dhe tregoni në mënyrë të ndershme disponueshmërinë.

Përdorni skedarë video të drejtpërdrejtë ose transmetime të mbështetura. Ky lojtës nuk eksporton video.

Çfarë funksionon tani

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.

Krijoni rrjedhën e punës

Përdorni veprimet beta të disponueshme më poshtë dhe testoni rezultatin në pajisjet tuaja të synuara.

Këto shembuj përdorin regjistrime aplikacioni si Lesson, Message dhe Order. Zëvendësoni ato me llojet tuaja të të dhënave dhe emrat e elementeve. Adresat e mediave shembull duhet të zëvendësohen me skedarët tuaj.

  1. Caktoni source_url = Selected Lesson's video_url dhe poster_url = Selected Lesson's poster_url. Përdorni auto ose progressive për një MP4; përdorni hls për një HLS stream.

  2. Pas playback_ready, përdorni Seek për të rifilluar në position_seconds të ruajtur. Përdoruesi fillon Play. Caktoni is_active sipas faktit nëse pamja e mësimit është e hapur apo jo.

  3. Shtoni kontrollet Play, Pause, Seek, Set playback rate dhe Enter fullscreen. Shfaqni position_seconds dhe duration_seconds.

  4. Pas tracks_changed, shfaqni zgjedhjet e disponueshme audio_tracks_json dhe subtitle_tracks_json për këtë video. Kaloni indeksin e zgjedhur te Select audio track ose Select subtitle track. Kur ndodh ngjarja ended, ruani progresin.

Diagram i rrjedhës së punës — jo një screenshot i aplikacionit

Konfigurojeni një herë

Krijoni ose zgjidhni projektin tuaj të aplikacionit Bubble në BestPlugins → Dashboard → Plugins. Zgjidhni Xodera Video Player Native, kopjoni çelësin e tij, pastaj hapni Bubble → Plugins → Xodera Video Player Native dhe ngjitni në licensing_api_key. Ruani një herë; më pas përdorni veprimet më poshtë. Çdo shtojcë në çdo projekt ka çelësin e vet.

Përdorni një adresë video ose transmetimi të drejtpërdrejtë. Adresa e një faqeje web në YouTube ose Vimeo nuk është adresë e drejtpërdrejtë e një skedari video. Riprodhimi nuk kërkon akses në kamerë ose mikrofon.

Konfigurojeni një herë
  1. Krijoni ose zgjidhni projektin tuaj të aplikacionit Bubble në BestPlugins → Dashboard → Plugins.
  2. Zgjidhni këtë shtojcë dhe kopjoni çelësin e projektit.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Shtoni elementin, zgjidhni të dhënat e aplikacionit tuaj dhe ndërtoni rrjedhën e punës më poshtë.
  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.
Instalim dhe abonim

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.

Ruani rezultatin në aplikacionin tuaj

Shembull WatchProgress: owner = Current User, lesson = Selected Lesson, seconds = Video Player's position_seconds, duration = Video Player's duration_seconds. Ruani vetëm për videon e zgjedhur aktualisht. Indeksat e pistave i përkasin asaj video dhe nuk duhen ruajtur si zgjedhje të përhershme gjuhësore.

Dështim, anulim dhe rikuperim

Në player_error, shfaqni error_code dhe ofroni Reload video. Kjo e ringarkon videon pa filluar riprodhimin. Zgjedhja e një burimi tjetër pastron zgjedhjet e vjetra të pistave. Dalja nga pamja e vendos videon në pauzë; përdoruesi shtyp Play për të vazhduar.

Aftësitë dhe kufizimet

Shpejtësitë: 0.5, 1, 1.5 dhe 2. Volumi: 0–1. Formatet: auto, progressive, HLS dhe vetëm Android‑DASH. Pistat e disponueshme varen nga skedari. Përdorni -1 për të fikur një pistë; -2 do të thotë i panjohur dhe nuk mund të zgjidhet. Pa editim, eksportim video, DRM, picture‑in‑picture ose cache të përhershme offline.

Rregullimet, veprimet dhe rezultatet

Përdorni këto emra në Bubble. Veçoritë e planifikuara janë shënuar veçmas.

Cilësimet beta të disponueshme

Rregullimet e elementit

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

Gjendjet

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

Ngjarjet

source_changedsource_loadedplayback_readyplaying_changedtime_changedendedtracks_changedfullscreen_changedplayer_error

Veprimet dhe inputet e tyre

PlayPauseStop and rewindReload videoSeekSet volumeSet mutedSet playback rateEnter fullscreenSelect audio trackSelect subtitle track
Rregullimet e elementit · 12
source_urltext · Parazgjedhur: ""
Vlera shembullhttps://bestplugins.online/native-samples/lesson.mp4
Shembull i shprehjes BubbleSelected Lesson's video_url
Adresa e skedarit audio, video ose imazhi të zgjedhur. Përdorni një lloj skedari që ky shtojcë mbulon.
poster_urltext · Parazgjedhur: ""
Vlera shembullhttps://bestplugins.online/native-samples/poster.jpg
Shembull i shprehjes BubbleSelected Lesson's poster_url
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
content_typetext · Parazgjedhur: "auto"
Vlera shembullauto
Shembull i shprehjes BubbleSelected Lesson's video_content_type
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
ratenumber · Parazgjedhur: 1
Vlera shembull1.5
Shembull i shprehjes BubbleSpeed Dropdown's value
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
volumenumber · Parazgjedhur: 1
Vlera shembull0.8
Shembull i shprehjes BubbleVolume Slider's value
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
mutedyes/no · Parazgjedhur: false
Vlera shembullno
Shembull i shprehjes BubbleMute Checkbox is checked
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
loopyes/no · Parazgjedhur: false
Vlera shembullno
Shembull i shprehjes BubbleSelected Lesson's repeat_enabled
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
is_activeyes/no · Parazgjedhur: true
Vlera shembullyes
Shembull i shprehjes BubbleGuideHost's view_is_active (your yes/no custom state)
Vendosni yes ndërsa kjo pamje është e hapur. Vendosni no kur dilni, në mënyrë që riprodhimi ose puna aktuale të mund të ndalojë.
disabledyes/no · Parazgjedhur: false
Vlera shembullno
Shembull i shprehjes BubbleGuideHost's is_busy (your yes/no custom state)
Çaktivizo elementin ndërsa aplikacioni juaj është i zënë ose kjo veprim është i padisponueshëm.
native_controlsyes/no · Parazgjedhur: false
Vlera shembullno
Shembull i shprehjes BubbleApp Settings' use_native_video_controls
Shfaqni ose fshihni kontrollet standarde video të pajisjes.
ui_text_jsontext · Parazgjedhur: "{}"
Vlera shembull{}
Shembull i shprehjes BubbleApp Settings' player_labels_json (supported keys only)
JSON opsionale me etiketa butonash të mbështetura. Lëreni bosh për të përdorur tekstin e brendshëm.
languagetext · Parazgjedhur: "auto"
Vlera shembulluk
Shembull i shprehjes BubbleCurrent User's preferred_language
Vendosni language=auto për të ndjekur gjuhën e pajisjes ose të shfletuesit, nëse ajo mbështetet. Futni një kod gjuhe të mbështetur për ta zgjedhur gjuhën shprehimisht.
Veprimet dhe inputet e tyre · 11
Play

Pa parametra veprimi

Pause

Pa parametra veprimi

Stop and rewind

Pa parametra veprimi

Reload video

Pa parametra veprimi

Seek
position_secondsnumber · Parazgjedhur: —
Vlera shembull45
Shembull i shprehjes BubbleSelected Chapter's start_seconds
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Set volume
volumenumber · Parazgjedhur: —
Vlera shembull0.8
Shembull i shprehjes BubbleVolume Slider's value
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Set muted
mutedyes/no · Parazgjedhur: —
Vlera shembullno
Shembull i shprehjes BubbleMute Checkbox is checked
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Set playback rate
ratenumber · Parazgjedhur: —
Vlera shembull1.5
Shembull i shprehjes BubbleSpeed Dropdown's value
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Enter fullscreen

Pa parametra veprimi

Select audio track
indexnumber · Parazgjedhur: —
Vlera shembull0
Shembull i shprehjes BubbleSelected row's current_source_index
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Select subtitle track
indexnumber · Parazgjedhur: —
Vlera shembull0
Shembull i shprehjes BubbleSelected row's current_source_index
Përdorni vlerën e regjistrimit aktual të biznesit; verifikojeni kundrejt kufijve më poshtë.
Gjendjet dhe ngjarjet

Gjendjet

is_playing · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

is_buffering · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

pending_play · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

is_live · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

muted · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

loop · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

has_source · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

is_fullscreen · yes/no

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

position_seconds · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

duration_seconds · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

volume · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

rate · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

source_generation · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

selected_audio_index · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

selected_subtitle_index · number

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

status · text

Rezultati aktual i kësaj veprimi. Përdorni ngjarjen përfundimtare përkatëse përpara se të ruani suksesin. idle,loading,readyToPlay,error

audio_tracks_json · text

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

subtitle_tracks_json · text

Vlera aktuale për elementin e zgjedhur. Lexojeni pas ngjarjes përkatëse.

error_code · text

Informacioni i gabimit për veprimin e fundit. Shfaqni një mesazh i dobishëm dhe ofroni riprovimin përkatës.

error_message · text

Informacioni i gabimit për veprimin e fundit. Shfaqni një mesazh i dobishëm dhe ofroni riprovimin përkatës.

Ngjarjet

source_changed

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

source_loaded

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

playback_ready

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

playing_changed

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

time_changed

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

ended

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

tracks_changed

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

fullscreen_changed

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

player_error

Kur ndodh kjo ngjarje, lexoni gjendjet përkatëse nga i njëjti element.

Pyetjet që bëjnë zhvilluesit

A mund të eksporto segmentin e zgjedhur?

Jo. Seek dhe modaliteti me ekran të plotë ndryshojnë riprodhimin, jo bajtët e videos.

Si funksionon abonimi?

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.

Udhëzues të lidhur

Për ndihmë, na tregoni cilin shtojcë dhe pajisje përdorni, veprimin që provuat dhe çfarë ndodhi. Përdorni një shembull pa të dhëna personale. Kurrë mos ndani çelësin tuaj ose skedarët privatë.