
Xodera Plugins · Bubble Native
Xodera Offline Files Native
Zadržite priloge izveštaja i izabrane datoteke na uređaju, vratite ih kasnije i omogućite korisniku da podeli izabranu 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 primeri
Pripremite nekoliko lokalnih priloga pre slanja izveštaja
Obrazac treba da prikaže koje su datoteke izabrane i omogući korisniku da zadrži upravljanu kopiju pre bilo koje slanja u oblak.
`accepted_mime_types_json = your allowed MIME list`; `multiple = yes`; postavite `max_files`, `max_file_bytes` i nalog/izveštaj `document_context`.
Pick files → pregledajte izabrana imena/veličine → Save selection locally. Vaš obrazac čuva rezultate ID‑ova datoteka dok njihov poseban radni tok za slanje ne otpremi odobrene datoteke.
Koristite `selection_count`, `file_names`, `file_sizes` i `saved_file_ids` za prikaz liste recenzija. Sačuvana upravljana kopija čuva original pozivaoca.
Otkazani izbor datoteke nije podnet izveštaj. Na `files_error`, zadržite već prihvaćene lokalne ID‑ove i prikažite `error_code`; nikada ne kreirajte cloud prilog samo iz lokalnog URI‑a.
Datoteke ostaju na ovom uređaju dok se ne podele ili otpreme odvojeno.
Sačuvajte izlaz foto‑editora ili snimača za kasniju upotrebu
Generisana lokalna datoteka može biti smeštena na privremenom mestu; aplikacija zahteva 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‑jem po potrebi.
Iskoristite `file_id`, `local_uri`, `size_bytes` i `is_saved_locally`; koristite `file_restored` da razlikujete završeno obnavljanje od samo zahtevanog.
Odbacite udaljeni HTTP URL kao lokalni izvor. Ako izvor nestane ili obnavljanje ne uspe, prikažite `error_code` i sačuvajte originalni zapis aplikacije za oporavak.
Datoteke ostaju na ovom uređaju dok se ne podele ili otpreme odvojeno.
Dozvolite korisniku da deli lokalnu potvrdu ili izvoz generisan od strane aplikacije
Aplikacija treba da prosledi izabranu lokalnu datoteku listi za deljenje uređaja, umesto 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 „Share“. Sačuvajte kopiju dok eksplicitno ne izaberu Delete saved copy.
Koristite `share_status` i `share_sheet_closed` za ažuriranje UI‑a nakon zatvaranja liste. Zadržite ID datoteke za još jedno svesno deljenje.
Zatvorena lista za deljenje ne dokazuje da je e‑mail/poruka isporučena. Obradite otkazivanje i `files_error` bez izveštavanja primaoca o uspehu.
Datoteke ostaju na ovom uređaju dok se ne podele ili otpreme odvojeno.
Šta trenutno funkcioniše
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.
Izgradite radni tok
Koristite dostupne beta akcije ispod i testirajte rezultat na svojim ciljanim uređajima.
Ovi primeri koriste zapise aplikacije kao što su Lesson, Message i Order. Zamenite ih svojim tipovima podataka i imenima elemenata. Primer adresa medija mora biti zamenjen vašim fajlovima.
Postavite document_context = Current User's unique id, ili stabilnu vrednost za nalog i izveštaj. Izaberite 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 sačuvane kopije; Restore saved file otvara izabrani sačuvani ID.
Share selected file otvara sistemski meni za deljenje. share_sheet_closed znači samo da je meni zatvoren. Delete saved copy zahteva izabrani ID i confirm=yes.
Konfigurišite jednom
Kreirajte ili izaberite vaš Bubble projekat aplikacije u BestPlugins → Dashboard → Plugins. Izaberite Xodera Offline Files Native, kopirajte njegov ključ, zatim otvorite Bubble → Plugins → Xodera Offline Files Native i nalepite ga u licensing_api_key. Sačuvajte jednom; zatim koristite akcije ispod. Svaki dodatak u svakom projektu ima svoj ključ.
Koristite izvorni aplikaciju sa pristupom izabranim datotekama. Postavite stabilan document_context za nalog ili izveštaj kako bi njegove sačuvane datoteke bile pravilno grupisane.
Konfigurišite jednom
- Kreirajte ili izaberite vaš Bubble projekat aplikacije na BestPlugins → Dashboard → Plugins.
- Izaberite ovaj dodatak i kopirajte njegov ključ projekta.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Dodajte element, izaberite vaše podatke aplikacije i izgradite tok rada 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
Primer LocalAttachment: vlasnik, document_context, ID sačuvane datoteke, display_name, mime_type i size_bytes. Ovaj ID funkcioniše samo na istom uređaju i za isti nalog ili izveštaj. Za onlajn prilog, otpremite datoteku posebnim radnim tokom i sačuvajte vraćenu onlajn referencu datoteke.
Neuspeh, otkazivanje i oporavak
Otkazani izbor datoteke vraća operation_cancelled; ne podnosi obrazac. Dok je native_pending=yes, sačekajte da se birač datoteka ili meni za deljenje zatvori pre otvaranja drugog. Clear session briše trenutni izbor, ali zadržava sačuvane kopije. Ako datoteka nedostaje, omogućite korisniku da je ponovo izabere.
Mogućnosti i ograničenja
Izaberite 1–20 datoteke odjednom. Ograničenje po datoteci: 1 bajt–256 MiB, uz niže ograničenje po potrebi. Filteri tipa datoteke ne proveravaju datoteke na viruse. ID‑ovi i putanje datoteka na uređaju ne funkcionišu kao veze za preuzimanje iz oblaka. Lokalne kopije nisu šifrovano skladište i mogu biti izgubljene ako se podaci aplikacije uklone.
Podešavanja, akcije i rezultati
Koristite ova imena u Bubble. Planirane funkcije su označene odvojeno.
Dostupna beta podešavanja
Podešavanja 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_errorAkcije i njihovi ulazi
Pick filesLoad local sourceSelect picked fileSave selection locallyList saved filesRestore saved fileDelete saved copyShare selected fileCancel operationClear sessionPodešavanja elementa · 16
source_uritext · Podrazumevano: ""- Primer vrednosti
file:///app-cache/report.pdf - Primer Bubble izraza
Photo Editor's output_uri - Čitljiva lokacija datoteke na ovom uređaju, koju vraća vaš birač ili drugi dodatak.
display_nametext · Podrazumevano: ""- Primer vrednosti
report-photo.jpg - Primer Bubble izraza
Selected Attachment's display_name - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
mime_typetext · Podrazumevano: ""- Primer vrednosti
image/jpeg - Primer Bubble izraza
Photo Editor's output_mime - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
document_contexttext · Podrazumevano: "default"- Primer vrednosti
<current-user-id> - Primer Bubble izraza
Current User's unique id - Stabilna vrednost za ovaj nalog ili zapis. Koristite istu vrednost prilikom vraćanja njegovih sačuvanih fajlova ili skica.
selected_file_idtext · Podrazumevano: ""- Primer vrednosti
<returned saved file ID> - Primer Bubble izraza
Selected LocalAttachment's local_file_id - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
accepted_mime_types_jsontext · Podrazumevano: "[\"*/*\"]"- Primer vrednosti
["image/*","application/pdf"] - Primer Bubble izraza
Report Settings' accepted_mime_types_json - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
multipleyes_no · Podrazumevano: false- Primer vrednosti
yes - Primer Bubble izraza
Report Settings' allow_multiple_attachments - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
copy_to_cacheyes_no · Podrazumevano: true- Primer vrednosti
yes - Primer Bubble izraza
Report Settings' copy_to_cache - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
max_filesnumber · Podrazumevano: 20- Primer vrednosti
5 - Primer Bubble izraza
Report Settings' attachment_limit - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
max_file_bytesnumber · Podrazumevano: 268435456- Primer vrednosti
10485760 - Primer Bubble izraza
Report Settings' max_attachment_bytes - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
is_activeyes_no · Podrazumevano: true- Primer vrednosti
yes - Primer Bubble izraza
GuideHost's view_is_active (your yes/no custom state) - Поставите „да“ док је овај преглед отворен. Поставите „не“ приликом напуштања, како би репродукција или тренутни рад могли да се зауставе.
disabledyes_no · Podrazumevano: false- Primer vrednosti
no - Primer Bubble izraza
GuideHost's is_busy (your yes/no custom state) - Онемогућите елемент док је ваша апликација заузета или док је ова радња недоступна.
show_controlsyes_no · Podrazumevano: true- Primer vrednosti
yes - Primer Bubble izraza
App Settings' show_editor_controls - Prikažite ili sakrijte ugrađene kontrole.
languagetext · Podrazumevano: "auto"- Primer vrednosti
uk - Primer Bubble izraza
Current User's preferred_language - Поставите language=auto да прати подржани уређај или језик прегледача. Унесите подржани код језика да бисте га изричито изабрали.
ui_text_jsontext · Podrazumevano: ""- Primer vrednosti
{} - Primer Bubble izraza
App Settings' player_labels_json (supported keys only) - Опционални JSON са подржаним ознакама дугмади. Оставите празно да се користи уграђени текст.
titletext · Podrazumevano: ""- Primer vrednosti
Lesson 4 — review - Primer Bubble izraza
Selected Lesson's name - Видљиви текст апликације; празно користи уграђени локализовани текст где је подржан. Без акредитива.
Akcije i njihovi ulazi · 10
Pick files
Nema parametara akcije
Load local source
source_uritext · Podrazumevano: —- Primer vrednosti
file:///app-cache/report.pdf - Primer Bubble izraza
Photo Editor's output_uri - Čitljiva lokacija datoteke na ovom uređaju, koju vraća vaš birač ili drugi dodatak.
display_nametext · Podrazumevano: —- Primer vrednosti
report-photo.jpg - Primer Bubble izraza
Selected Attachment's display_name - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
mime_typetext · Podrazumevano: —- Primer vrednosti
image/jpeg - Primer Bubble izraza
Photo Editor's output_mime - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
Select picked file
indexnumber · Podrazumevano: —- Primer vrednosti
0 - Primer Bubble izraza
Selected row's current_source_index - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
Save selection locally
Nema parametara akcije
List saved files
Nema parametara akcije
Restore saved file
file_idtext · Podrazumevano: —- Primer vrednosti
<returned saved file ID> - Primer Bubble izraza
Selected LocalAttachment's local_file_id - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
Delete saved copy
file_idtext · Podrazumevano: —- Primer vrednosti
<returned saved file ID> - Primer Bubble izraza
Selected LocalAttachment's local_file_id - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
confirmyes_no · Podrazumevano: —- Primer vrednosti
yes — explicit confirmation only - Primer Bubble izraza
Confirm Checkbox is checked - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
Share selected file
dialog_titletext · Podrazumevano: —- Primer vrednosti
Share attachment - Primer Bubble izraza
Selected Report's share_title - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
utitext · Podrazumevano: —- Primer vrednosti
"" - Primer Bubble izraza
Empty unless your iOS integration supplies a proven UTI - Користите вредност тренутног пословног записа; проверите је у односу на доње границе.
Cancel operation
Nema parametara akcije
Clear session
Nema parametara akcije
Stanja i događaji
Stanja
status · textТекући резултат ове радње. Користите одговарајући догађај завршетка пре чувања успеха.
is_busy · yes_noRad je još u toku. Sačekajte pre nego što započnete drugu radnju.
native_pending · yes_noRad je još u toku. Sačekajte pre nego što započnete drugu radnju.
operation · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
selection_count · numberТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
selected_index · numberТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
file_id · textIdentifikator za ovu stavku ili radnju. Sačuvajte ga uz odgovarajući zapis aplikacije. Koristite isti identifikator zahteva pri ponovnom pokušaju neizvesnog rezultata.
local_uri · textLokacija fajla na ovom uređaju. Sačuvajte ili otpremite fajl odvojeno ako mora da ostane online.
display_name · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
mime_type · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
mime_source · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
size_bytes · numberТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
is_saved_locally · yes_noТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
file_ids · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_uris · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_names · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_mime_types · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
file_sizes · number (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
files_json · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
saved_count · numberТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
saved_file_ids · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_uris · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_names · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_mime_types · text (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_file_sizes · number (lista)Lista za izabrane datoteke. Stavke na istom indeksu u drugim listama datoteka odnose se na istu datoteku.
saved_files_json · textТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
invalid_saved_count · numberТекућа вредност за изабрану ставку. Прочитајте је након повезаног догађаја.
share_status · textТекући резултат ове радње. Користите одговарајући догађај завршетка пре чувања успеха.
error_code · textИнформације о грешци за последњу радњу. Прикажите корисну поруку и понудите релевантно поновно покушавање.
Događaji
selection_changedKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
files_savedKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
list_loadedKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
file_restoredKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
file_deletedKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
share_sheet_closedKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
operation_cancelledKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
files_errorKada se ovaj događaj desi, pročitajte povezane stanje iz istog elementa.
Pitanja koja programeri postavljaju
Da li deljenje znači „poslato“?
Ne. OS ne pruža pouzdan dokaz o uspešnom prijemu ovde. Prikažite „share sheet closed“.
Kako funkcioniše 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 dodatak i uređaj koristite, akciju koju ste pokušali i šta se desilo. Koristite primer bez ličnih podataka. Nikada ne delite vaš ključ ili privatne fajlove.