
Xodera Plugins · Bubble Native
Xodera Audio Player Native
Fügen Sie den Lektionen, Sprachnachrichten oder Produktaufzeichnungen einen klaren Audio‑Player hinzu. Lassen Sie die Nutzer hören, die Geschwindigkeit ändern und an ihrer gespeicherten Position fortsetzen.
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 geprüft 6 November 2026
Praktische Beispiele
Sprachnotizen innerhalb einer Support‑Konversation
Ein einfacher Dateilink führt Nutzer aus der Konversation heraus und erschwert die Überprüfung langer Antworten.
`source_url = Selected Message’s audio URL`; `title = Selected Message’s sender label`; `subtitle = Selected Message’s timestamp`.
Platzieren Sie den Player in den Details der ausgewählten Nachricht. Lassen Sie den Nutzer Play/Pause, Seek zu einem nützlichen Punkt und Set speed. Binden Sie `is_active` an die offene Konversation.
Verwenden Sie `is_playing`, `current_time` und `duration`, um den Fortschritt anzuzeigen. Bewahren Sie die Message‑ID in Ihrer App auf, damit ein verspätetes Ereignis nicht ein anderes Gespräch aktualisieren kann.
Bei `player_error` zeigen Sie `error_code` an und bieten Reload source an; bewahren Sie die Nachricht und markieren Sie sie nach einem Fehler niemals als angehört.
Nur Wiedergabe. Ihre App speichert den Hörfortschritt.
Setzen Sie eine Sprachlektion an der gespeicherten Position fort
Lernende müssen einen schwierigen Abschnitt erneut abspielen, anstatt die gesamte Lektion neu zu starten.
`source_url = Current Lesson’s audio URL`; `title = Current Lesson’s name`; die letzte Position gehört zu diesem Lernenden und dieser Lektion in Ihrer Datenbank.
Nach `ready` für die aktuelle Lektion Seek zu den gespeicherten Sekunden und warten Sie, bis der Benutzer Play. Verwenden Sie Set speed für langsameres Hören. Speichern Sie den Fortschritt mit Ihrem eigenen App‑Workflow.
Lesen Sie `current_time` und `duration`. Bei `playback_ended` kann Ihre App einen Hörmeilenstein für die aktuelle Lesson aufzeichnen.
Wenn die Quelle geändert wurde, verwerfen Sie die alte Position, bis diese Lektion geladen ist. Betrachten Sie den Abschluss des Zuhörens nicht als Nachweis dafür, dass der Lernende den Inhalt verstanden oder einen Test bestanden hat.
Nur Wiedergabe. Ihre App speichert den Hörfortschritt.
Überprüfen Sie einen Audio‑Anhang mit zeitgestempelten Kommentaren
Redakteure oder Trainer müssen von einem Kommentar zum relevanten Moment in einer Aufnahme springen.
`source_url = Selected Review’s recording URL`; jeder von der App verwaltete Kommentar speichert seinen eigenen Sekundenwert; optional enthält `waveform_peaks_json` reale Peaks für dieselbe Aufnahme.
Klicken Sie einen Kommentar → Seek zu seinen Sekunden → Play. Bei Quellenwechsel ersetzen oder löschen Sie die Peaks und binden die ausgewählte Bewertung erneut.
Zeigen Sie `current_time` neben Ihrem Kommentar-Editor an. `waveform_available` teilt Ihrer UI mit, ob tatsächliche gelieferte Peaks verfügbar sind.
Begrenzen oder verwerfen Sie veraltete Zeitstempel gegenüber der aktuellen Dauer in Ihrer App. Wenn keine realen Peaks vorhanden sind, zeigen Sie die normale Fortschrittsanzeige anstelle einer erfundenen Audioanalyse.
Nur Wiedergabe. Ihre App speichert den Hörfortschritt.
Was jetzt funktioniert
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.
Workflow erstellen
Verwenden Sie die unten verfügbaren Beta‑Aktionen und testen Sie das Ergebnis auf Ihren Zielgeräten.
Diese Beispiele verwenden App‑Datensätze wie Lesson, Message und Order. Ersetzen Sie sie durch Ihre eigenen Datentypen und Elementnamen. Beispiel‑Medienadressen müssen durch Ihre eigenen Dateien ersetzt werden.
Fügen Sie das Audio‑Element hinzu. Setzen Sie source_url = Selected Message's audio_url, title = Selected Message's sender_label und subtitle = Selected Message's date_label.
Falls Sie echte Wellformdaten für diese Aufnahme haben, übergeben Sie sie in waveform_peaks_json. Andernfalls lassen Sie das Feld leer.
Wenn das Ereignis ready eintritt, verwenden Sie Seek mit der gespeicherten Sekundenanzahl, falls nötig. Lassen Sie den Benutzer Play drücken. Verwenden Sie Pause, Seek und Set speed für die Player‑Buttons.
Zeigen Sie current_time und duration an. Bei playback_ended speichern Sie den Hörfortschritt für die ausgewählte Nachricht oder Lektion. Setzen Sie is_active auf den Status, ob diese Ansicht geöffnet ist.
Einmal konfigurieren
Erstellen oder wählen Sie Ihr Bubble‑App‑Projekt in BestPlugins → Dashboard → Plugins. Wählen Sie Xodera Audio Player Native, kopieren Sie dessen Schlüssel und öffnen Sie anschließend Bubble → Plugins → Xodera Audio Player Native, um ihn in licensing_api_key einzufügen. Speichern Sie einmal; verwenden Sie dann die untenstehenden Aktionen. Jeder Plugin in jedem Projekt hat einen eigenen Schlüssel.
Verwenden Sie eine direkte Audio‑Dateiadresse, die die App öffnen kann. Das Abspielen von Audio erfordert keinen Zugriff auf Mikrofon oder Kamera.
Einmal konfigurieren
- Erstellen oder wählen Sie Ihr Bubble‑App‑Projekt bei BestPlugins → Dashboard → Plugins.
- Wählen Sie dieses Plugin aus und kopieren Sie dessen Projektschlüssel.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Fügen Sie das Element hinzu, wählen Sie Ihre App‑Daten und erstellen Sie den untenstehenden Workflow.
- 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 und 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.
Speichern Sie das Ergebnis in Ihrer App
Beispiel ListeningProgress: owner = Current User, lesson = Selected Lesson, seconds = Audio Player's current_time, duration = Audio Player's duration. Speichern, wenn der Benutzer die Lektion pausiert oder verlässt, statt bei jeder Bildschirmaktualisierung.
Fehler, Abbruch und Wiederherstellung
Bei player_error zeigen Sie error_code an und bieten Reload source an. Bewahren Sie die Nachrichten‑ oder Lektion‑Aufzeichnung. Wenn eine andere Aufnahme ausgewählt wird, laden Sie deren gespeicherte Position. Das Zurückkehren zur Ansicht startet die Wiedergabe nicht automatisch.
Funktionen und Grenzen
Wiedergabegeschwindigkeiten: 1, 1.5 und 2. Lautstärke: 0–1. Wellformdaten: 2–2048 Werte zwischen 0 und 1. Unterstützte Audioformate hängen vom Gerät ab. Der Player zeichnet nicht auf, transkribiert nicht und speichert Audio nicht dauerhaft für die Offline‑Nutzung. Hintergrund‑ und Sperrbildschirm‑Wiedergabe sind nicht garantiert.
Einstellungen, Aktionen und Ergebnisse
Verwenden Sie diese Namen in Bubble. Geplante Funktionen sind separat gekennzeichnet.
Verfügbare Beta‑Einstellungen
Elementeinstellungen
source_url · textwaveform_peaks_json · texttitle · textsubtitle · textplayback_rate · numbervolume · numberloop · yes_nois_active · yes_nodisabled · yes_noui_text_json · textlanguage · textZustände
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 · textEreignisse
readyplayback_startedplayback_pausedplayback_endedseek_completedrate_changedplayer_errorAktionen und deren Eingaben
PlayPauseToggleStopSeekSet speedSet volumeReload sourceElementeinstellungen · 11
source_urltext · Standard: ""- Beispielwert
https://bestplugins.online/native-samples/lesson.mp3 - Beispiel Bubble Ausdruck
Selected Message's audio_url - Adresse der ausgewählten Audio-, Video- oder Bilddatei. Verwenden Sie einen Dateityp, den dieses Plugin unterstützt.
waveform_peaks_jsontext · Standard: ""- Beispielwert
[0.1,0.4,0.2,0.7] - Beispiel Bubble Ausdruck
Selected Message's waveform_peaks_json - Echte normalisierte Amplitudenwerte für diese Aufnahme; leer lassen, falls nicht verfügbar.
titletext · Standard: ""- Beispielwert
Lesson 4 — review - Beispiel Bubble Ausdruck
Selected Lesson's name - Sichtbarer App-Text; leer verwendet die integrierte lokalisierte Kopie, wo unterstützt. Keine Anmeldedaten.
subtitletext · Standard: ""- Beispielwert
Teacher · today - Beispiel Bubble Ausdruck
Selected Message's sender_label - Sichtbarer App-Text; leer verwendet die integrierte lokalisierte Kopie, wo unterstützt. Keine Anmeldedaten.
playback_ratenumber · Standard: 1- Beispielwert
1.5 - Beispiel Bubble Ausdruck
Current User's listening_speed - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
volumenumber · Standard: 1- Beispielwert
0.8 - Beispiel Bubble Ausdruck
Volume Slider's value - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
loopyes_no · Standard: false- Beispielwert
no - Beispiel Bubble Ausdruck
Selected Lesson's repeat_enabled - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
is_activeyes_no · Standard: true- Beispielwert
yes - Beispiel Bubble Ausdruck
GuideHost's view_is_active (your yes/no custom state) - Setzen Sie ja, solange diese Ansicht geöffnet ist. Setzen Sie nein beim Verlassen, damit die Wiedergabe oder die aktuelle Arbeit gestoppt werden kann.
disabledyes_no · Standard: false- Beispielwert
no - Beispiel Bubble Ausdruck
GuideHost's is_busy (your yes/no custom state) - Deaktivieren Sie das Element, solange Ihre App beschäftigt ist oder diese Aktion nicht verfügbar ist.
ui_text_jsontext · Standard: ""- Beispielwert
{} - Beispiel Bubble Ausdruck
App Settings' player_labels_json (supported keys only) - Optionales JSON mit unterstützten Schaltflächenbeschriftungen. Leer lassen, um den integrierten Text zu verwenden.
languagetext · Standard: "auto"- Beispielwert
uk - Beispiel Bubble Ausdruck
Current User's preferred_language - Setzen Sie language=auto, um einer unterstützten Geräte‑ oder Browsersprache zu folgen. Geben Sie einen unterstützten Sprachcode ein, um ihn ausdrücklich auszuwählen.
Aktionen und deren Eingaben · 8
Play
Keine Aktionsparameter
Pause
Keine Aktionsparameter
Toggle
Keine Aktionsparameter
Stop
Keine Aktionsparameter
Seek
secondsnumber · Standard: —- Beispielwert
12 - Beispiel Bubble Ausdruck
Selected Comment's seconds - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
Set speed
ratenumber · Standard: —- Beispielwert
1.5 - Beispiel Bubble Ausdruck
Speed Dropdown's value - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
Set volume
volumenumber · Standard: —- Beispielwert
0.8 - Beispiel Bubble Ausdruck
Volume Slider's value - Verwenden Sie den Wert des aktuellen Geschäftsdatensatzes; prüfen Sie ihn anhand der untenstehenden Grenzen.
Reload source
Keine Aktionsparameter
Zustände und Ereignisse
Zustände
player_status · textAktuelles Ergebnis dieser Aktion. Verwenden Sie das passende Abschlussereignis, bevor Sie den Erfolg speichern.
is_playing · yes_noAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
is_loaded · yes_noAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
is_buffering · yes_noAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
current_time · numberAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
duration · numberAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
progress · numberAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
playback_rate · numberAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
volume · numberAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
is_looping · yes_noAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
waveform_available · yes_noAktueller Wert für das ausgewählte Element. Lesen Sie ihn nach dem zugehörigen Ereignis.
waveform_status · textAktuelles Ergebnis dieser Aktion. Verwenden Sie das passende Abschlussereignis, bevor Sie den Erfolg speichern.
error_code · textFehlermeldung für die letzte Aktion. Zeigen Sie eine hilfreiche Nachricht an und bieten Sie den entsprechenden Wiederholungsversuch an.
Ereignisse
readyWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
playback_startedWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
playback_pausedWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
playback_endedWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
seek_completedWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
rate_changedWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
player_errorWenn dieses Ereignis eintritt, lesen Sie die zugehörigen Zustände aus demselben Element.
Fragen, die Entwickler stellen
Erzeugt es die Wellenform?
Nein. Stellen Sie reale normalisierte Peaks für diese Quelle bereit; der normale Fortschritt funktioniert ohne sie.
Wie funktioniert das 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.
Verwandte Anleitungen
Für Hilfe geben Sie an, welches Plugin und Gerät Sie verwenden, welche Aktion Sie versucht haben und was passiert ist. Verwenden Sie ein Beispiel ohne persönliche Daten. Teilen Sie niemals Ihren Schlüssel oder private Dateien.