Offline Files rozhraní.
Offline Files rozhraní.
← Všechny nativní průvodce

Xodera Plugins · Bubble Native

Xodera Offline Files Native

Uchovejte přílohy zprávy a vybrané soubory v zařízení, obnovte je později a umožněte uživateli sdílet vybranou kopii.

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.

Dokumentace přezkoumána 6 listopad 2026

Praktické příklady

Připravte několik místních příloh před odesláním zprávy

Formulář musí zobrazit, které soubory byly vybrány, a umožnit uživateli zachovat spravovanou kopii před jakýmkoli odesláním do cloudu.

`accepted_mime_types_json = your allowed MIME list`; `multiple = yes`; nastavte `max_files`, `max_file_bytes` a účet/zprávu `document_context`.

Pick files → zkontrolujte vybraná jména/velikosti → Save selection locally. Váš formulář uchovává výsledná ID souborů, dokud jejich samostatný pracovní postup Odeslat nenahraje schválené soubory.

Použijte `selection_count`, `file_names`, `file_sizes` a `saved_file_ids` k vykreslení seznamu revizí. Uložená spravovaná kopie zachovává originál volajícího.

Zrušený výběr není odeslaná zpráva. Na `files_error` zachovejte již přijatá místní ID a zobrazte `error_code`; nikdy nevytvářejte cloudový příloha jen z místního URI.

Soubory zůstávají na tomto zařízení, dokud nejsou sdíleny nebo nahrány samostatně.

Uchovejte výstup fotoeditoru nebo rekordéru pro pozdější použití

Vygenerovaný místní soubor může být v dočasném umístění; aplikace potřebuje explicitní spravovanou kopii.

`source_uri = the local output of a separately accepted editor/recorder`; svázat jeho skutečné `display_name` a `mime_type`; použít `document_context` stejného vlastníka.

Load local source → zkontrolovat metadata → Save selection locally. Uložte vrácené ID souboru pouze v odpovídajícím zařízení/kontextu, pak Restore saved file tímto přesným ID podle potřeby.

Spotřebujte `file_id`, `local_uri`, `size_bytes` a `is_saved_locally`; použijte `file_restored` k rozlišení dokončené obnovy od pouhého požadavku.

Odmítněte vzdálenou HTTP URL jako místní zdroj. Pokud zdroj zmizí nebo obnova selže, zobrazte `error_code` a zachovejte původní záznam aplikace pro obnovu.

Soubory zůstávají na tomto zařízení, dokud nejsou sdíleny nebo nahrány samostatně.

Umožněte uživateli sdílet lokální účtenku nebo export vygenerovaný aplikací

Aplikace by měla předat vybraný místní soubor do sdílecího listu zařízení místo vytváření veřejné URL.

`selected_file_id = the exact managed copy chosen from your app’s saved-file list`; jeho název a MIME popisují skutečný místní soubor.

List saved files → Restore saved file → Share selected file po klepnutí uživatele na Sdílet. Uchovejte uloženou kopii, dokud výslovně nevyberou Delete saved copy.

Použijte `share_status` a `share_sheet_closed` k aktualizaci UI po zavření listu. Zachovejte ID souboru pro další úmyslné sdílení.

Uzavřený sdílecí list není důkaz, že e‑mail/zpráva byla doručena. Zpracujte zrušení a `files_error` bez hlášení úspěchu příjemci.

Soubory zůstávají na tomto zařízení, dokud nejsou sdíleny nebo nahrány samostatně.

Co funguje nyní

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.

Vytvořte pracovní postup

Použijte níže dostupné beta akce a otestujte výsledek na svých cílových zařízeních.

Tyto příklady používají záznamy aplikace, jako jsou Lesson, Message a Order. Nahraďte je vlastními typy dat a názvy prvků. Příkladové adresy médií je třeba nahradit vlastními soubory.

  1. Nastavte document_context = Current User's unique id nebo stabilní hodnotu pro účet a zprávu. Vyberte accepted_mime_types_json, max_files a max_file_bytes.

  2. Spusťte Pick files nebo použijte Load local source pro čitelný soubor vytvořený aplikací Photo Editor nebo Recorder. Po selection_changed načtěte odpovídající seznamy souborů; Select picked file vybere index.

  3. Spusťte Save selection locally. Po files_saved uchovejte saved_file_ids v místním záznamu příloh vaší aplikace. List saved files zobrazuje uložené kopie; Restore saved file otevře vybrané uložené ID.

  4. Share selected file otevře systémovou nabídku sdílení. share_sheet_closed jen znamená, že se nabídka zavřela. Delete saved copy potřebuje vybrané ID a confirm=yes.

Diagram pracovního postupu — ne snímek obrazovky aplikace

Nastavte jednou

Vytvořte nebo vyberte svůj projekt aplikace Bubble v BestPlugins → Dashboard → Plugins. Vyberte Xodera Offline Files Native, zkopírujte jeho klíč, poté otevřete Bubble → Plugins → Xodera Offline Files Native a vložte jej do licensing_api_key. Uložte jednou; poté použijte akce níže. Každý plugin v každém projektu má svůj vlastní klíč.

Použijte nativní aplikaci s přístupem k vybraným souborům. Nastavte stabilní document_context pro účet nebo zprávu, aby její uložené soubory byly správně seskupeny.

Nastavte jednou
  1. Vytvořte nebo vyberte svůj projekt aplikace Bubble v BestPlugins → Dashboard → Plugins.
  2. Vyberte tento plugin a zkopírujte jeho projektový klíč.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Přidejte prvek, vyberte svá data aplikace a vytvořte níže uvedený pracovní postup.
  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.
Instalace a předplatné

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.

Uložte výsledek ve své aplikaci

Příklad LocalAttachment: vlastník, document_context, ID uloženého souboru, display_name, mime_type a size_bytes. Toto ID funguje pouze na stejném zařízení a pro stejný účet nebo zprávu. Pro online přílohu nahrajte soubor samostatným pracovním postupem a uložte vrácený odkaz na online soubor.

Selhání, zrušení a obnovení

Zrušený výběr vrací operation_cancelled; neodesílá formulář. Během native_pending=yes počkejte, až se výběr souboru nebo nabídka sdílení zavře, než otevřete další. Clear session vymaže aktuální výběr, ale zachová uložené kopie. Pokud soubor chybí, nechte uživatele vybrat jej znovu.

Možnosti a limity

Vyberte najednou soubory 1–20. Limit na soubor: 1 byte–256 MiB, s nižším limitem, pokud zvolíte. Filtry typů souborů neprověřují soubory na viry. ID souborů a cesty v zařízení nefungují jako odkazy pro stažení z cloudu. Lokální kopie nejsou šifrované úložiště a mohou být ztraceny při odstranění dat aplikace.

Nastavení, akce a výsledky

Použijte tyto názvy v Bubble. Plánované funkce jsou označeny zvlášť.

Dostupná beta nastavení

Nastavení prvku

source_uri · textdisplay_name · textmime_type · textdocument_context · textselected_file_id · textaccepted_mime_types_json · textmultiple · yes_nocopy_to_cache · yes_nomax_files · numbermax_file_bytes · numberis_active · yes_nodisabled · yes_noshow_controls · yes_nolanguage · textui_text_json · texttitle · text

Stavy

status · textis_busy · yes_nonative_pending · yes_nooperation · textselection_count · numberselected_index · numberfile_id · textlocal_uri · textdisplay_name · textmime_type · textmime_source · textsize_bytes · numberis_saved_locally · yes_nofile_ids · text (seznam)file_uris · text (seznam)file_names · text (seznam)file_mime_types · text (seznam)file_sizes · number (seznam)files_json · textsaved_count · numbersaved_file_ids · text (seznam)saved_file_uris · text (seznam)saved_file_names · text (seznam)saved_file_mime_types · text (seznam)saved_file_sizes · number (seznam)saved_files_json · textinvalid_saved_count · numbershare_status · texterror_code · text

Události

selection_changedfiles_savedlist_loadedfile_restoredfile_deletedshare_sheet_closedoperation_cancelledfiles_error

Akce a jejich vstupy

Pick filesLoad local sourceSelect picked fileSave selection locallyList saved filesRestore saved fileDelete saved copyShare selected fileCancel operationClear session
Nastavení prvku · 16
source_uritext · Výchozí: ""
Ukázková hodnotafile:///app-cache/report.pdf
Příklad Bubble výrazuPhoto Editor's output_uri
Čitelná cesta k souboru na tomto zařízení, vrácená vaším výběrem nebo jiným pluginem.
display_nametext · Výchozí: ""
Ukázková hodnotareport-photo.jpg
Příklad Bubble výrazuSelected Attachment's display_name
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
mime_typetext · Výchozí: ""
Ukázková hodnotaimage/jpeg
Příklad Bubble výrazuPhoto Editor's output_mime
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
document_contexttext · Výchozí: "default"
Ukázková hodnota<current-user-id>
Příklad Bubble výrazuCurrent User's unique id
Stabilní hodnota pro tento účet nebo záznam. Použijte stejnou hodnotu při obnově jeho uložených souborů nebo konceptů.
selected_file_idtext · Výchozí: ""
Ukázková hodnota<returned saved file ID>
Příklad Bubble výrazuSelected LocalAttachment's local_file_id
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
accepted_mime_types_jsontext · Výchozí: "[\"*/*\"]"
Ukázková hodnota["image/*","application/pdf"]
Příklad Bubble výrazuReport Settings' accepted_mime_types_json
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
multipleyes_no · Výchozí: false
Ukázková hodnotayes
Příklad Bubble výrazuReport Settings' allow_multiple_attachments
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
copy_to_cacheyes_no · Výchozí: true
Ukázková hodnotayes
Příklad Bubble výrazuReport Settings' copy_to_cache
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
max_filesnumber · Výchozí: 20
Ukázková hodnota5
Příklad Bubble výrazuReport Settings' attachment_limit
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
max_file_bytesnumber · Výchozí: 268435456
Ukázková hodnota10485760
Příklad Bubble výrazuReport Settings' max_attachment_bytes
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
is_activeyes_no · Výchozí: true
Ukázková hodnotayes
Příklad Bubble výrazuGuideHost's view_is_active (your yes/no custom state)
Nastavte ano, dokud je tento pohled otevřený. Nastavte ne při odchodu, aby se přehrávání nebo aktuální práce mohly zastavit.
disabledyes_no · Výchozí: false
Ukázková hodnotano
Příklad Bubble výrazuGuideHost's is_busy (your yes/no custom state)
Deaktivujte prvek, když je aplikace zaneprázdněná nebo je tato akce nedostupná.
show_controlsyes_no · Výchozí: true
Ukázková hodnotayes
Příklad Bubble výrazuApp Settings' show_editor_controls
Zobrazit nebo skrýt vestavěné ovládací prvky.
languagetext · Výchozí: "auto"
Ukázková hodnotauk
Příklad Bubble výrazuCurrent User's preferred_language
Nastavte language=auto tak, aby sledoval podporované zařízení nebo jazyk prohlížeče. Zadejte podporovaný kód jazyka pro jeho explicitní výběr.
ui_text_jsontext · Výchozí: ""
Ukázková hodnota{}
Příklad Bubble výrazuApp Settings' player_labels_json (supported keys only)
Volitelný JSON s podporovanými popisky tlačítek. Nechte prázdné pro použití vestavěného textu.
titletext · Výchozí: ""
Ukázková hodnotaLesson 4 — review
Příklad Bubble výrazuSelected Lesson's name
Viditelný text aplikace; prázdné použije vestavěnou lokalizovanou verzi, kde je podporována. Žádné přihlašovací údaje.
Akce a jejich vstupy · 10
Pick files

Žádné parametry akce

Load local source
source_uritext · Výchozí: —
Ukázková hodnotafile:///app-cache/report.pdf
Příklad Bubble výrazuPhoto Editor's output_uri
Čitelná cesta k souboru na tomto zařízení, vrácená vaším výběrem nebo jiným pluginem.
display_nametext · Výchozí: —
Ukázková hodnotareport-photo.jpg
Příklad Bubble výrazuSelected Attachment's display_name
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
mime_typetext · Výchozí: —
Ukázková hodnotaimage/jpeg
Příklad Bubble výrazuPhoto Editor's output_mime
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
Select picked file
indexnumber · Výchozí: —
Ukázková hodnota0
Příklad Bubble výrazuSelected row's current_source_index
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
Save selection locally

Žádné parametry akce

List saved files

Žádné parametry akce

Restore saved file
file_idtext · Výchozí: —
Ukázková hodnota<returned saved file ID>
Příklad Bubble výrazuSelected LocalAttachment's local_file_id
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
Delete saved copy
file_idtext · Výchozí: —
Ukázková hodnota<returned saved file ID>
Příklad Bubble výrazuSelected LocalAttachment's local_file_id
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
confirmyes_no · Výchozí: —
Ukázková hodnotayes — explicit confirmation only
Příklad Bubble výrazuConfirm Checkbox is checked
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
Share selected file
dialog_titletext · Výchozí: —
Ukázková hodnotaShare attachment
Příklad Bubble výrazuSelected Report's share_title
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
utitext · Výchozí: —
Ukázková hodnota""
Příklad Bubble výrazuEmpty unless your iOS integration supplies a proven UTI
Použijte hodnotu aktuálního obchodního záznamu; ověřte ji vůči níže uvedeným limitům.
Cancel operation

Žádné parametry akce

Clear session

Žádné parametry akce

Stavy a události

Stavy

status · text

Aktuální výsledek této akce. Použijte odpovídající událost dokončení před uložením úspěchu.

is_busy · yes_no

Práce stále probíhá. Počkejte, než spustíte další akci.

native_pending · yes_no

Práce stále probíhá. Počkejte, než spustíte další akci.

operation · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

selection_count · number

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

selected_index · number

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

file_id · text

Identifikátor pro tuto položku nebo akci. Uchovejte jej u odpovídajícího záznamu aplikace. Použijte stejný identifikátor požadavku při opakování nejistého výsledku.

local_uri · text

Umístění souboru na tomto zařízení. Uložte nebo nahrajte soubor samostatně, pokud má být uchován online.

display_name · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

mime_type · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

mime_source · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

size_bytes · number

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

is_saved_locally · yes_no

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

file_ids · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

file_uris · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

file_names · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

file_mime_types · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

file_sizes · number (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

files_json · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

saved_count · number

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

saved_file_ids · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

saved_file_uris · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

saved_file_names · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

saved_file_mime_types · text (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

saved_file_sizes · number (seznam)

Seznam vybraných souborů. Položky se stejným indexem v ostatních seznamech souborů odkazují na stejný soubor.

saved_files_json · text

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

invalid_saved_count · number

Aktuální hodnota vybrané položky. Přečtěte ji po související události.

share_status · text

Aktuální výsledek této akce. Použijte odpovídající událost dokončení před uložením úspěchu.

error_code · text

Informace o chybě poslední akce. Zobrazte užitečnou zprávu a nabídněte příslušný opakovaný pokus.

Události

selection_changed

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

files_saved

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

list_loaded

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

file_restored

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

file_deleted

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

share_sheet_closed

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

operation_cancelled

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

files_error

Když nastane tato událost, přečtěte související stavy ze stejného prvku.

Otázky, které vývojáři kladou

Znamená Sdílení „odesláno“?

Ne. OS zde neposkytuje spolehlivý potvrzení o úspěšném doručení příjemci. Zobrazte „sdílecí list zavřen“.

Jak funguje předplatné?

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.

Související průvodci

Pro pomoc nám sdělte, který plugin a zařízení používáte, jakou akci jste zkusili a co se stalo. Použijte příklad bez osobních údajů. Nikdy nesdílejte svůj klíč ani soukromé soubory.