
Xodera Plugins · Bubble Native
Xodera Audio Player Native
Lägg till en tydlig ljudspelare i lektioner, röstmeddelanden eller produktposter. Låt användare lyssna, ändra hastighet och fortsätta från sin sparade plats.
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.
Dokumentation granskad 6 november 2026
Praktiska exempel
Röstanteckningar i ett support-samtal
En enkel fillänk skickar användare bort från konversationen och gör långa svar svåra att granska.
`source_url = Selected Message’s audio URL`; `title = Selected Message’s sender label`; `subtitle = Selected Message’s timestamp`.
Placera spelaren i detaljen för det valda meddelandet. Låt användaren Play/Pause, Seek till en användbar punkt och Set speed. Binda `is_active` till den öppna konversationen.
Använd `is_playing`, `current_time` och `duration` för att visa framsteg. Behåll Message‑ID:t i din app så att en sen händelse inte kan uppdatera en annan konversation.
Vid `player_error`, visa `error_code` och erbjud Reload source; bevara meddelandet och märk det aldrig som lyssnat efter ett fel.
Endast uppspelning. Din app sparar lyssningsframsteg.
Återuppta en språkleksjon vid den sparade positionen
Elever behöver spela upp ett svårt avsnitt igen istället för att starta om hela lektionen.
`source_url = Current Lesson’s audio URL`; `title = Current Lesson’s name`; den sista positionen tillhör den eleven och lektionen i din databas.
Efter `ready` för den aktuella lektionen, Seek till de sparade sekunderna och vänta på att användaren Play. Använd Set speed för långsammare lyssning. Spara framsteg med ditt eget app‑flöde.
Läs `current_time` och `duration`. Vid `playback_ended` kan din app registrera en lyssningsmilstolpe för den aktuella Lesson.
Om källan har ändrats, kassera den gamla positionen tills lektionen är inläst. Behandla inte lyssningsslut som bevis på att eleven har förstått eller klarat ett test.
Endast uppspelning. Din app sparar lyssningsframsteg.
Granska en ljudbilaga med tidsstämplade kommentarer
Redaktörer eller tränare behöver hoppa från en kommentar till rätt ögonblick i en inspelning.
`source_url = Selected Review’s recording URL`; varje app‑ägda kommentar lagrar sitt eget sekundvärde; valfri `waveform_peaks_json` innehåller verkliga toppar för samma inspelning.
Klicka på en kommentar → Seek till dess sekunder → Play. Vid källbyte, ersätt eller rensa topparna och bind den valda granskningen igen.
Visa `current_time` bredvid din kommentarskompositör. `waveform_available` talar om för ditt UI om faktiska levererade toppar är tillgängliga.
Klämma eller avvisa föråldrade tidsstämplar mot den aktuella varaktigheten i din app. När inga verkliga toppar finns, visa den vanliga förloppskontrollen istället för påhittad ljudanalys.
Endast uppspelning. Din app sparar lyssningsframsteg.
Vad som fungerar nu
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 arbetsflödet
Använd de tillgängliga betahandlingarna nedan och testa resultatet på dina mål enheter.
Dessa exempel använder app‑poster såsom Lesson, Message och Order. Ersätt dem med dina egna datatyper och elementnamn. Exempel på mediadresser måste ersättas med dina egna filer.
Lägg till ljudelementet. Ställ in source_url = Selected Message's audio_url, title = Selected Message's sender_label och subtitle = Selected Message's date_label.
Om du har verklig vågformsdata för denna inspelning, skicka den i waveform_peaks_json. Lämna annars fältet tomt.
När ready-händelsen inträffar, använd Seek med det sparade antalet sekunder om det behövs. Låt användaren trycka på Play. Använd Pause, Seek och Set speed för spelarens knappar.
Visa current_time och duration. På playback_ended, spara lyssningsframsteg för det valda meddelandet eller lektionen. Ställ in is_active till om denna vy är öppen.
Konfigurera en gång
Skapa eller välj ditt Bubble‑appprojekt i BestPlugins → Dashboard → Plugins. Välj Xodera Audio Player Native, kopiera dess nyckel, öppna sedan Bubble → Plugins → Xodera Audio Player Native och klistra in den i licensing_api_key. Spara en gång; använd sedan handlingarna nedan. Varje plugin i varje projekt har sin egen nyckel.
Använd en direkt ljudfiladress som appen kan öppna. Uppspelning av ljud kräver ingen åtkomst till mikrofon eller kamera.
Konfigurera en gång
- Skapa eller välj ditt Bubble‑appprojekt på BestPlugins → Dashboard → Plugins.
- Välj detta plugin och kopiera dess projektnyckel.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Lägg till elementet, välj dina appdata och bygg arbetsflödet nedan.
- 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.
Installation och prenumeration
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.
Spara resultatet i din app
Exempel ListeningProgress: owner = Current User, lesson = Selected Lesson, seconds = Audio Player's current_time, duration = Audio Player's duration. Spara när användaren pausar eller lämnar lektionen, snarare än vid varje skärmuppdatering.
Fel, avbryt och återställning
På player_error, visa error_code och erbjud Reload source. Behåll meddelandet eller lektionens post. När en annan inspelning väljs, läs in dess egna sparade position. Återgång till vyn startar inte uppspelning automatiskt.
Kapaciteter och begränsningar
Uppspelningshastigheter: 1, 1.5 och 2. Volym: 0–1. vågformsdata: 2–2048 värden mellan 0 och 1. Stödda ljudformat beror på enheten. Spelaren spelar inte in, transkriberar eller sparar ljud permanent för offline-användning. Bakgrunds- och låsskärmsuppspelning garanteras inte.
Inställningar, åtgärder och resultat
Använd dessa namn i Bubble. Planerade funktioner markeras separat.
Tillgängliga beta-inställningar
Elementinställningar
source_url · textwaveform_peaks_json · texttitle · textsubtitle · textplayback_rate · numbervolume · numberloop · yes_nois_active · yes_nodisabled · yes_noui_text_json · textlanguage · textTillstånd
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 · textHändelser
readyplayback_startedplayback_pausedplayback_endedseek_completedrate_changedplayer_errorÅtgärder och deras indata
PlayPauseToggleStopSeekSet speedSet volumeReload sourceElementinställningar · 11
source_urltext · Standard: ""- Exempelvärde
https://bestplugins.online/native-samples/lesson.mp3 - Exempel Bubble uttryck
Selected Message's audio_url - Adress till den valda ljud-, video- eller bildfilen. Använd en filtyp som detta plugin stödjer.
waveform_peaks_jsontext · Standard: ""- Exempelvärde
[0.1,0.4,0.2,0.7] - Exempel Bubble uttryck
Selected Message's waveform_peaks_json - Verkliga normaliserade amplitudvärden för denna inspelning; lämna tomt om ej tillgängligt.
titletext · Standard: ""- Exempelvärde
Lesson 4 — review - Exempel Bubble uttryck
Selected Lesson's name - Synlig apptext; tomt använder inbyggd lokaliserad kopia där det stöds. Inga autentiseringsuppgifter.
subtitletext · Standard: ""- Exempelvärde
Teacher · today - Exempel Bubble uttryck
Selected Message's sender_label - Synlig apptext; tomt använder inbyggd lokaliserad kopia där det stöds. Inga autentiseringsuppgifter.
playback_ratenumber · Standard: 1- Exempelvärde
1.5 - Exempel Bubble uttryck
Current User's listening_speed - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
volumenumber · Standard: 1- Exempelvärde
0.8 - Exempel Bubble uttryck
Volume Slider's value - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
loopyes_no · Standard: false- Exempelvärde
no - Exempel Bubble uttryck
Selected Lesson's repeat_enabled - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
is_activeyes_no · Standard: true- Exempelvärde
yes - Exempel Bubble uttryck
GuideHost's view_is_active (your yes/no custom state) - Sätt ja medan denna vy är öppen. Sätt nej vid lämning, så uppspelning eller pågående arbete kan stoppas.
disabledyes_no · Standard: false- Exempelvärde
no - Exempel Bubble uttryck
GuideHost's is_busy (your yes/no custom state) - Inaktivera elementet medan din app är upptagen eller åtgärden är otillgänglig.
ui_text_jsontext · Standard: ""- Exempelvärde
{} - Exempel Bubble uttryck
App Settings' player_labels_json (supported keys only) - Valfri JSON med stöd för knappetiketter. Lämna tomt för att använda den inbyggda texten.
languagetext · Standard: "auto"- Exempelvärde
uk - Exempel Bubble uttryck
Current User's preferred_language - Ställ in language=auto för att följa en stödjande enhet eller webbläsarspråk. Ange en stödjande språkkod för att välja den explicit.
Åtgärder och deras indata · 8
Play
Inga åtgärdsparametrar
Pause
Inga åtgärdsparametrar
Toggle
Inga åtgärdsparametrar
Stop
Inga åtgärdsparametrar
Seek
secondsnumber · Standard: —- Exempelvärde
12 - Exempel Bubble uttryck
Selected Comment's seconds - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Set speed
ratenumber · Standard: —- Exempelvärde
1.5 - Exempel Bubble uttryck
Speed Dropdown's value - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Set volume
volumenumber · Standard: —- Exempelvärde
0.8 - Exempel Bubble uttryck
Volume Slider's value - Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Reload source
Inga åtgärdsparametrar
Tillstånd och händelser
Tillstånd
player_status · textAktuellt resultat av denna åtgärd. Använd motsvarande slutförande‑händelse innan du sparar framgång.
is_playing · yes_noAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
is_loaded · yes_noAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
is_buffering · yes_noAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
current_time · numberAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
duration · numberAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
progress · numberAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
playback_rate · numberAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
volume · numberAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
is_looping · yes_noAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
waveform_available · yes_noAktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.
waveform_status · textAktuellt resultat av denna åtgärd. Använd motsvarande slutförande‑händelse innan du sparar framgång.
error_code · textFelinformation för den senaste åtgärden. Visa ett hjälpsamt meddelande och erbjud relevant återförsök.
Händelser
readyNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
playback_startedNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
playback_pausedNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
playback_endedNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
seek_completedNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
rate_changedNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
player_errorNär denna händelse inträffar, läs de relaterade tillstånden från samma element.
Frågor som utvecklare ställer
Skapar den vågformen?
Nej. Tillhandahåll verkliga normaliserade toppar för den källan; vanlig framsteg fungerar utan dem.
Hur fungerar prenumerationen?
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.
Relaterade guider
För hjälp, berätta vilken plugin och enhet du använder, vilken åtgärd du försökte och vad som hände. Använd ett exempel utan personuppgifter. Dela aldrig din nyckel eller privata filer.