
Xodera Plugins · Bubble Native
Xodera Offline Files Native
Zadržite priloge izvještaja i odabrane datoteke na uređaju, vratite ih kasnije i omogućite korisniku da podijeli odabranu kopiju.
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.
Dokumentacija pregledana 6 novembar 2026
Praktični primjeri
Pripremite nekoliko lokalnih priloga prije slanja izvještaja
Obrazac treba prikazati koje su datoteke odabrane i omogućiti korisniku da zadrži upravljanu kopiju prije bilo koje obrade u oblaku.
`accepted_mime_types_json = your allowed MIME list`; `multiple = yes`; postavite `max_files`, `max_file_bytes` i račun/izvještaj `document_context`.
Pick files → pregledajte odabrane nazive/veličine → Save selection locally. Vaš obrazac čuva rezultate ID‑ova datoteka dok njihov zasebni radni tok Submit ne učita odobrene datoteke.
Koristite `selection_count`, `file_names`, `file_sizes` i `saved_file_ids` za prikaz liste recenzija. Sačuvana upravljana kopija čuva original pozivača.
Otkazani odabir datoteke nije podneseno izvješće. Na `files_error` zadržite već prihvaćene lokalne ID‑ove i prikažite `error_code`; nikada ne stvarajte cloud privitak samo iz lokalnog URI‑a.
Datoteke ostaju na ovom uređaju dok se ne podijele ili učitaju zasebno.
Sačuvajte izlaz foto‑editora ili snimača za kasniju upotrebu
Generisana lokalna datoteka može se nalaziti na privremenoj lokaciji; aplikacija treba eksplicitnu upravljanu kopiju.
`source_uri = the local output of a separately accepted editor/recorder`; povežite njegov pravi `display_name` i `mime_type`; koristite `document_context` istog vlasnika.
Load local source → pregledajte metapodatke → Save selection locally. Sačuvajte vraćeni ID datoteke samo u odgovarajućem uređaju/kontekstu, zatim Restore saved file tim tačnim ID‑om po potrebi.
Iskoristite `file_id`, `local_uri`, `size_bytes` i `is_saved_locally`; koristite `file_restored` da razlikujete dovršeno vraćanje od samo zahtjeva za njim.
Odbijte udaljeni HTTP URL kao lokalni izvor. Ako izvor nestane ili vraćanje ne uspije, prikažite `error_code` i sačuvajte originalni zapis aplikacije za oporavak.
Datoteke ostaju na ovom uređaju dok se ne podijele ili učitaju zasebno.
Omogućite korisniku da podijeli lokalni račun ili izvoz generisan od aplikacije
Aplikacija bi trebala predati odabranu lokalnu datoteku listu za dijeljenje uređaja, umjesto da izmišlja javni URL.
`selected_file_id = the exact managed copy chosen from your app’s saved-file list`; njegovo ime i MIME opisuju stvarnu lokalnu datoteku.
List saved files → Restore saved file → Share selected file nakon što korisnik pritisne Dijeli. Zadržite sačuvanu kopiju dok eksplicitno ne odaberu Delete saved copy.
Koristite `share_status` i `share_sheet_closed` za ažuriranje UI‑ja nakon zatvaranja liste. Zadržite ID datoteke za još jedno namjerno dijeljenje.
Zatvorena lista za dijeljenje ne dokazuje da je e‑mail/poruka isporučena. Obradite otkazivanje i `files_error` bez izvještavanja o uspjehu primatelju.
Datoteke ostaju na ovom uređaju dok se ne podijele ili učitaju zasebno.
Šta trenutno radi
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.
Izradite radni tok
Koristite dostupne beta radnje ispod i testirajte rezultat na svojim ciljanim uređajima.
Ovi primjeri koriste zapise aplikacije poput Lesson, Message i Order. Zamijenite ih svojim tipovima podataka i nazivima elemenata. Primjer adresa medija mora biti zamijenjen vašim vlastitim datotekama.
Postavite document_context = Current User's unique id, ili stabilnu vrijednost za račun i izvještaj. Odaberite accepted_mime_types_json, max_files i max_file_bytes.
Pokrenite Pick files, ili koristite Load local source za čitljivu datoteku koju je proizveo Foto editor ili Rekorder. Nakon selection_changed, pročitajte odgovarajuće liste datoteka; Select picked file bira indeks.
Pokrenite Save selection locally. Nakon files_saved, zadržite saved_file_ids u lokalnom zapisu priloga vaše aplikacije. List saved files prikazuje spremljene kopije; Restore saved file otvara odabrani spremljeni ID.
Share selected file otvara sistemski izbornik za dijeljenje. share_sheet_closed znači samo da je izbornik zatvoren. Delete saved copy zahtijeva odabrani ID i confirm=yes.
Jednom konfigurirajte
Kreirajte ili odaberite vaš Bubble projekt aplikacije u BestPlugins → Dashboard → Plugins. Odaberite Xodera Offline Files Native, kopirajte njegov ključ, zatim otvorite Bubble → Plugins → Xodera Offline Files Native i zalijepite ga u licensing_api_key. Sačuvajte jednom; zatim koristite radnje ispod. Svaki dodatak u svakom projektu ima svoj ključ.
Koristite izvorni aplikaciju s pristupom odabranim datotekama. Postavite stabilni document_context za račun ili izvještaj kako bi njegove spremljene datoteke bile pravilno grupisane.
Jednom konfigurirajte
- Kreirajte ili odaberite vaš Bubble projekt aplikacije na BestPlugins → Dashboard → Plugins.
- Odaberite ovaj dodatak i kopirajte njegov ključ projekta.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Dodajte element, odaberite svoje podatke aplikacije i izgradite radni tok ispod.
- 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.
Instalacija i pretplata
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.
Sačuvajte rezultat u vašoj aplikaciji
Primjer LocalAttachment: vlasnik, document_context, ID spremljene datoteke, display_name, mime_type i size_bytes. Ovaj ID funkcionira samo na istom uređaju i za isti račun ili izvještaj. Za online prilog, učitajte datoteku posebnim radnim tokom i sačuvajte vraćenu online referencu datoteke.
Neuspjeh, otkazivanje i oporavak
Otkazani odabir datoteke vraća operation_cancelled; ne podnosi obrazac. Dok je native_pending=yes, sačekajte da se birač datoteka ili izbornik za dijeljenje zatvori prije otvaranja novog. Clear session briše trenutni izbor, ali zadržava spremljene kopije. Ako datoteka nedostaje, dopustite korisniku da je izabere ponovo.
Mogućnosti i ograničenja
Odaberite 1–20 datoteka odjednom. Ograničenje po datoteci: 1 bajt–256 MiB, s nižim ograničenjem po vašem izboru. Filteri tipa datoteke ne provjeravaju datoteke na viruse. ID‑ovi i putanje datoteka na uređaju ne funkcioniraju kao veze za preuzimanje iz oblaka. Lokalne kopije nisu šifrovano skladište i mogu se izgubiti ako se podaci aplikacije uklone.
Postavke, radnje i rezultati
Koristite ova imena u Bubble. Planirane funkcije su označene odvojeno.
Dostupna beta podešavanja
Postavke elementa
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 · textStanja
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 (Lista)file_uris · text (Lista)file_names · text (Lista)file_mime_types · text (Lista)file_sizes · number (Lista)files_json · textsaved_count · numbersaved_file_ids · text (Lista)saved_file_uris · text (Lista)saved_file_names · text (Lista)saved_file_mime_types · text (Lista)saved_file_sizes · number (Lista)saved_files_json · textinvalid_saved_count · numbershare_status · texterror_code · textDogađaji
selection_changedfiles_savedlist_loadedfile_restoredfile_deletedshare_sheet_closedoperation_cancelledfiles_errorRadnje i njihovi ulazi
Pick filesLoad local sourceSelect picked fileSave selection locallyList saved filesRestore saved fileDelete saved copyShare selected fileCancel operationClear sessionPostavke elementa · 16
source_uritext · Podrazumevano: ""- Primjer vrijednosti
file:///app-cache/report.pdf - Primjer Bubble izraza
Photo Editor's output_uri - Čitljiva lokacija datoteke na ovom uređaju, koju vraća vaš odabirnik ili drugi dodatak.
display_nametext · Podrazumevano: ""- Primjer vrijednosti
report-photo.jpg - Primjer Bubble izraza
Selected Attachment's display_name - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
mime_typetext · Podrazumevano: ""- Primjer vrijednosti
image/jpeg - Primjer Bubble izraza
Photo Editor's output_mime - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
document_contexttext · Podrazumevano: "default"- Primjer vrijednosti
<current-user-id> - Primjer Bubble izraza
Current User's unique id - Stabilna vrijednost za ovaj račun ili zapis. Koristite istu vrijednost prilikom vraćanja njegovih spremljenih datoteka ili skica.
selected_file_idtext · Podrazumevano: ""- Primjer vrijednosti
<returned saved file ID> - Primjer Bubble izraza
Selected LocalAttachment's local_file_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
accepted_mime_types_jsontext · Podrazumevano: "[\"*/*\"]"- Primjer vrijednosti
["image/*","application/pdf"] - Primjer Bubble izraza
Report Settings' accepted_mime_types_json - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
multipleyes_no · Podrazumevano: false- Primjer vrijednosti
yes - Primjer Bubble izraza
Report Settings' allow_multiple_attachments - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
copy_to_cacheyes_no · Podrazumevano: true- Primjer vrijednosti
yes - Primjer Bubble izraza
Report Settings' copy_to_cache - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
max_filesnumber · Podrazumevano: 20- Primjer vrijednosti
5 - Primjer Bubble izraza
Report Settings' attachment_limit - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
max_file_bytesnumber · Podrazumevano: 268435456- Primjer vrijednosti
10485760 - Primjer Bubble izraza
Report Settings' max_attachment_bytes - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
is_activeyes_no · Podrazumevano: true- Primjer vrijednosti
yes - Primjer Bubble izraza
GuideHost's view_is_active (your yes/no custom state) - Postavite da dok je ovaj prikaz otvoren. Postavite ne pri napuštanju, kako reprodukcija ili trenutni rad mogu stati.
disabledyes_no · Podrazumevano: false- Primjer vrijednosti
no - Primjer Bubble izraza
GuideHost's is_busy (your yes/no custom state) - Onemogućite element dok je aplikacija zauzeta ili je ova radnja nedostupna.
show_controlsyes_no · Podrazumevano: true- Primjer vrijednosti
yes - Primjer Bubble izraza
App Settings' show_editor_controls - Prikaži ili sakrij ugrađene kontrole.
languagetext · Podrazumevano: "auto"- Primjer vrijednosti
uk - Primjer Bubble izraza
Current User's preferred_language - Postavite language=auto da prati podržani uređaj ili jezik preglednika. Unesite podržani kod jezika da ga izričito odaberete.
ui_text_jsontext · Podrazumevano: ""- Primjer vrijednosti
{} - Primjer Bubble izraza
App Settings' player_labels_json (supported keys only) - Opcionalni JSON s podržanim oznakama dugmadi. Ostavite prazno da koristite ugrađeni tekst.
titletext · Podrazumevano: ""- Primjer vrijednosti
Lesson 4 — review - Primjer Bubble izraza
Selected Lesson's name - Vidljivi tekst aplikacije; prazno koristi ugrađenu lokaliziranu kopiju gdje je podržano. Bez vjerodajnica.
Radnje i njihovi ulazi · 10
Pick files
Nema parametara akcije
Load local source
source_uritext · Podrazumevano: —- Primjer vrijednosti
file:///app-cache/report.pdf - Primjer Bubble izraza
Photo Editor's output_uri - Čitljiva lokacija datoteke na ovom uređaju, koju vraća vaš odabirnik ili drugi dodatak.
display_nametext · Podrazumevano: —- Primjer vrijednosti
report-photo.jpg - Primjer Bubble izraza
Selected Attachment's display_name - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
mime_typetext · Podrazumevano: —- Primjer vrijednosti
image/jpeg - Primjer Bubble izraza
Photo Editor's output_mime - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Select picked file
indexnumber · Podrazumevano: —- Primjer vrijednosti
0 - Primjer Bubble izraza
Selected row's current_source_index - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Save selection locally
Nema parametara akcije
List saved files
Nema parametara akcije
Restore saved file
file_idtext · Podrazumevano: —- Primjer vrijednosti
<returned saved file ID> - Primjer Bubble izraza
Selected LocalAttachment's local_file_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Delete saved copy
file_idtext · Podrazumevano: —- Primjer vrijednosti
<returned saved file ID> - Primjer Bubble izraza
Selected LocalAttachment's local_file_id - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
confirmyes_no · Podrazumevano: —- Primjer vrijednosti
yes — explicit confirmation only - Primjer Bubble izraza
Confirm Checkbox is checked - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Share selected file
dialog_titletext · Podrazumevano: —- Primjer vrijednosti
Share attachment - Primjer Bubble izraza
Selected Report's share_title - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
utitext · Podrazumevano: —- Primjer vrijednosti
"" - Primjer Bubble izraza
Empty unless your iOS integration supplies a proven UTI - Koristite vrijednost trenutnog poslovnog zapisa; provjerite je prema donjim ograničenjima.
Cancel operation
Nema parametara akcije
Clear session
Nema parametara akcije
Stanja i događaji
Stanja
status · textTrenutni rezultat ove radnje. Koristite odgovarajući događaj završetka prije spremanja uspjeha.
is_busy · yes_noRad je još u toku. Sačekajte prije nego što započnete drugu radnju.
native_pending · yes_noRad je još u toku. Sačekajte prije nego što započnete drugu radnju.
operation · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
selection_count · numberTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
selected_index · numberTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
file_id · textIdentifikator za ovu stavku ili radnju. Sačuvajte ga uz odgovarajući zapis aplikacije. Koristite isti identifikator zahtjeva pri ponovnom pokušaju neizvjesnog rezultata.
local_uri · textLokacija datoteke na ovom uređaju. Sačuvajte ili otpremite datoteku odvojeno ako mora ostati online.
display_name · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
mime_type · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
mime_source · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
size_bytes · numberTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
is_saved_locally · yes_noTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
file_ids · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_uris · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_names · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_mime_types · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_sizes · number (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
files_json · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
saved_count · numberTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
saved_file_ids · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_uris · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_names · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_mime_types · text (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_sizes · number (Lista)Lista odabranih datoteka. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_files_json · textTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
invalid_saved_count · numberTrenutna vrijednost odabranog elementa. Pročitajte je nakon povezanog događaja.
share_status · textTrenutni rezultat ove radnje. Koristite odgovarajući događaj završetka prije spremanja uspjeha.
error_code · textInformacije o grešci za posljednju radnju. Prikažite korisnu poruku i ponudite odgovarajući pokušaj ponovo.
Događaji
selection_changedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
files_savedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
list_loadedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
file_restoredKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
file_deletedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
share_sheet_closedKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
operation_cancelledKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
files_errorKada se ovaj događaj dogodi, pročitajte povezana stanja iz istog elementa.
Pitanja koja programeri postavljaju
Da li dijeljenje znači “poslano”?
Ne. OS ne pruža pouzdan dokaz o uspjehu primatelja ovdje. Prikažite “share sheet closed”.
Kako funkcionira pretplata?
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.
Povezani vodiči
Za pomoć, recite nam koji plugin i uređaj koristite, koju radnju ste pokušali i šta se dogodilo. Koristite primjer bez ličnih podataka. Nikada ne dijelite svoj ključ ili privatne datoteke.