Offline Files-gränssnitt.
Offline Files-gränssnitt.
← Alla inbyggda guider

Xodera Plugins · Bubble Native

Xodera Offline Files Native

Behåll rapportbilagor och valda filer på enheten, återställ dem senare och låt användaren dela en vald kopia.

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

Förbered flera lokala bilagor innan rapporten skickas

Ett formulär måste visa vilka filer som valts och låta användaren behålla en hanterad kopia innan någon moln‑insändning.

`accepted_mime_types_json = your allowed MIME list`; `multiple = yes`; ange `max_files`, `max_file_bytes` och ett konto/rapport `document_context`.

Pick files → inspektera de valda namnen/storlekarna → Save selection locally. Ditt formulär behåller de resulterande fil‑ID‑en tills dess separata Submit‑arbetsflöde laddar upp godkända filer.

Använd `selection_count`, `file_names`, `file_sizes` och `saved_file_ids` för att rendera granskningslistan. En sparad hanterad kopia bevarar anroparens originalfil.

En avbruten väljare är inte en inskickad rapport. På `files_error`, behåll redan accepterade lokala ID:n och visa `error_code`; skapa aldrig ett molnbifog från enbart en lokal URI.

Filerna finns kvar på den här enheten tills de delas eller laddas upp separat.

Behåll ett foto‑redigerings‑ eller inspelningsresultat för senare användning

En genererad lokal fil kan finnas i en tillfällig plats; appen behöver en explicit hanterad kopia.

`source_uri = the local output of a separately accepted editor/recorder`; bind dess verkliga `display_name` och `mime_type`; använd samma ägares `document_context`.

Load local source → inspektera metadata → Save selection locally. Spara det returnerade fil‑ID:t endast i den matchande enheten/kontexten, och sedan Restore saved file med exakt det ID:t när det behövs.

Använd `file_id`, `local_uri`, `size_bytes` och `is_saved_locally`; använd `file_restored` för att skilja en slutförd återställning från enbart en begäran.

Avvisa en fjärr‑HTTP‑URL som en lokal källa. Om en källa försvann eller återställning misslyckas, visa `error_code` och bevara den ursprungliga app‑posten för återställning.

Filerna finns kvar på den här enheten tills de delas eller laddas upp separat.

Låt en användare dela ett app‑genererat lokalt kvitto eller export

Appen bör överlämna en vald lokal fil till enhetens delningsblad istället för att skapa en offentlig URL.

`selected_file_id = the exact managed copy chosen from your app’s saved-file list`; dess namn och MIME beskriver den verkliga lokala filen.

List saved files → Restore saved file → Share selected file efter att användaren tryckt på Dela. Behåll den sparade kopian tills de uttryckligen väljer Delete saved copy.

Använd `share_status` och `share_sheet_closed` för att uppdatera UI:n efter att bladet stängts. Behåll fil‑ID:t för en annan avsiktlig delning.

Ett stängt delningsblad bevisar inte att ett e‑postmeddelande eller meddelande levererats. Hantera avbokning och `files_error` utan att rapportera framgång till mottagaren.

Filerna finns kvar på den här enheten tills de delas eller laddas upp separat.

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.

  1. Ange document_context = Current User's unique id, eller ett stabilt värde för kontot och rapporten. Välj accepted_mime_types_json, max_files och max_file_bytes.

  2. Kör Pick files, eller använd Load local source för en läsbar fil skapad av Fotoeditor eller Inspelare. Efter selection_changed, läs de matchande fillistorna; Select picked file väljer ett index.

  3. Kör Save selection locally. Efter files_saved, behåll saved_file_ids i din apps lokala bilageregister. List saved files visar sparade kopior; Restore saved file öppnar det valda sparade ID‑et.

  4. Share selected file öppnar systemets delningsmeny. share_sheet_closed betyder bara att menyn stängdes. Delete saved copy kräver det valda ID‑et och confirm=yes.

Arbetsflödesdiagram — inte en appskärmbild

Konfigurera en gång

Skapa eller välj ditt Bubble‑appprojekt i BestPlugins → Dashboard → Plugins. Välj Xodera Offline Files Native, kopiera dess nyckel, öppna sedan Bubble → Plugins → Xodera Offline Files Native och klistra in den i licensing_api_key. Spara en gång; använd sedan åtgärderna nedan. Varje plugin i varje projekt har sin egen nyckel.

Använd en inbyggd app med åtkomst till de valda filerna. Ange ett stabilt document_context för kontot eller rapporten så att dess sparade filer grupperas korrekt.

Konfigurera en gång
  1. Skapa eller välj ditt Bubble‑appprojekt på BestPlugins → Dashboard → Plugins.
  2. Välj detta plugin och kopiera dess projektnyckel.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Lägg till elementet, välj dina appdata och bygg arbetsflödet nedan.
  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.
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 LocalAttachment: ägare, document_context, sparat fil‑ID, display_name, mime_type och size_bytes. Detta ID fungerar endast på samma enhet och för samma konto eller rapport. För en online‑bilaga, ladda upp filen med ett separat arbetsflöde och spara den returnerade online‑filreferensen.

Fel, avbryt och återställning

En avbruten väljare returnerar operation_cancelled; den skickar inte in formuläret. Medan native_pending=yes, vänta på att filväljaren eller delningsmenyn stängs innan en ny öppnas. Clear session rensar det aktuella urvalet men behåller sparade kopior. Om en fil saknas, låt användaren välja den igen.

Kapaciteter och begränsningar

Välj 1–20 filer på en gång. Per‑filgräns: 1 byte–256 MiB, med en lägre gräns om du så önskar. Filtypfilter kontrollerar inte filer för virus. Enhetens fil‑ID och sökvägar fungerar inte som moln‑nedladdningslänkar. Lokala kopior är inte krypterad lagring och kan gå förlorade om appdata tas bort.

Inställningar, åtgärder och resultat

Använd dessa namn i Bubble. Planerade funktioner markeras separat.

Tillgängliga beta-inställningar

Elementinställningar

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

Tillstånd

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 · text

Händelser

selection_changedfiles_savedlist_loadedfile_restoredfile_deletedshare_sheet_closedoperation_cancelledfiles_error

Åtgärder och deras indata

Pick filesLoad local sourceSelect picked fileSave selection locallyList saved filesRestore saved fileDelete saved copyShare selected fileCancel operationClear session
Elementinställningar · 16
source_uritext · Standard: ""
Exempelvärdefile:///app-cache/report.pdf
Exempel Bubble uttryckPhoto Editor's output_uri
Läsbar filplats på den här enheten, returnerad av din väljare eller ett annat plugin.
display_nametext · Standard: ""
Exempelvärdereport-photo.jpg
Exempel Bubble uttryckSelected Attachment's display_name
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
mime_typetext · Standard: ""
Exempelvärdeimage/jpeg
Exempel Bubble uttryckPhoto Editor's output_mime
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
document_contexttext · Standard: "default"
Exempelvärde<current-user-id>
Exempel Bubble uttryckCurrent User's unique id
Stabilt värde för detta konto eller post. Använd samma värde när du återställer dess sparade filer eller utkast.
selected_file_idtext · Standard: ""
Exempelvärde<returned saved file ID>
Exempel Bubble uttryckSelected LocalAttachment's local_file_id
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
accepted_mime_types_jsontext · Standard: "[\"*/*\"]"
Exempelvärde["image/*","application/pdf"]
Exempel Bubble uttryckReport Settings' accepted_mime_types_json
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
multipleyes_no · Standard: false
Exempelvärdeyes
Exempel Bubble uttryckReport Settings' allow_multiple_attachments
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
copy_to_cacheyes_no · Standard: true
Exempelvärdeyes
Exempel Bubble uttryckReport Settings' copy_to_cache
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
max_filesnumber · Standard: 20
Exempelvärde5
Exempel Bubble uttryckReport Settings' attachment_limit
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
max_file_bytesnumber · Standard: 268435456
Exempelvärde10485760
Exempel Bubble uttryckReport Settings' max_attachment_bytes
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
is_activeyes_no · Standard: true
Exempelvärdeyes
Exempel Bubble uttryckGuideHost'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ärdeno
Exempel Bubble uttryckGuideHost's is_busy (your yes/no custom state)
Inaktivera elementet medan din app är upptagen eller åtgärden är otillgänglig.
show_controlsyes_no · Standard: true
Exempelvärdeyes
Exempel Bubble uttryckApp Settings' show_editor_controls
Visa eller dölj de inbyggda kontrollerna.
languagetext · Standard: "auto"
Exempelvärdeuk
Exempel Bubble uttryckCurrent 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.
ui_text_jsontext · Standard: ""
Exempelvärde{}
Exempel Bubble uttryckApp 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.
titletext · Standard: ""
ExempelvärdeLesson 4 — review
Exempel Bubble uttryckSelected Lesson's name
Synlig apptext; tomt använder inbyggd lokaliserad kopia där det stöds. Inga autentiseringsuppgifter.
Åtgärder och deras indata · 10
Pick files

Inga åtgärdsparametrar

Load local source
source_uritext · Standard: —
Exempelvärdefile:///app-cache/report.pdf
Exempel Bubble uttryckPhoto Editor's output_uri
Läsbar filplats på den här enheten, returnerad av din väljare eller ett annat plugin.
display_nametext · Standard: —
Exempelvärdereport-photo.jpg
Exempel Bubble uttryckSelected Attachment's display_name
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
mime_typetext · Standard: —
Exempelvärdeimage/jpeg
Exempel Bubble uttryckPhoto Editor's output_mime
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Select picked file
indexnumber · Standard: —
Exempelvärde0
Exempel Bubble uttryckSelected row's current_source_index
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Save selection locally

Inga åtgärdsparametrar

List saved files

Inga åtgärdsparametrar

Restore saved file
file_idtext · Standard: —
Exempelvärde<returned saved file ID>
Exempel Bubble uttryckSelected LocalAttachment's local_file_id
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Delete saved copy
file_idtext · Standard: —
Exempelvärde<returned saved file ID>
Exempel Bubble uttryckSelected LocalAttachment's local_file_id
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
confirmyes_no · Standard: —
Exempelvärdeyes — explicit confirmation only
Exempel Bubble uttryckConfirm Checkbox is checked
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Share selected file
dialog_titletext · Standard: —
ExempelvärdeShare attachment
Exempel Bubble uttryckSelected Report's share_title
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
utitext · Standard: —
Exempelvärde""
Exempel Bubble uttryckEmpty unless your iOS integration supplies a proven UTI
Använd det aktuella affärspostens värde; validera det mot gränserna nedan.
Cancel operation

Inga åtgärdsparametrar

Clear session

Inga åtgärdsparametrar

Tillstånd och händelser

Tillstånd

status · text

Aktuellt resultat av denna åtgärd. Använd motsvarande slutförande‑händelse innan du sparar framgång.

is_busy · yes_no

Arbetet pågår fortfarande. Vänta innan du påbörjar en annan åtgärd.

native_pending · yes_no

Arbetet pågår fortfarande. Vänta innan du påbörjar en annan åtgärd.

operation · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

selection_count · number

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

selected_index · number

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

file_id · text

Identifierare för detta objekt eller åtgärd. Behåll den med motsvarande app‑post. Använd samma begäranidentifierare vid återförsök av ett osäkert resultat.

local_uri · text

Filplats på den här enheten. Spara eller ladda upp filen separat om den måste hållas online.

display_name · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

mime_type · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

mime_source · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

size_bytes · number

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

is_saved_locally · yes_no

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

file_ids · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

file_uris · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

file_names · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

file_mime_types · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

file_sizes · number (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

files_json · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

saved_count · number

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

saved_file_ids · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

saved_file_uris · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

saved_file_names · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

saved_file_mime_types · text (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

saved_file_sizes · number (lista)

En lista för de valda filerna. Objekt på samma index i de andra fillistorna hänvisar till samma fil.

saved_files_json · text

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

invalid_saved_count · number

Aktuellt värde för det valda objektet. Läs det efter den relaterade händelsen.

share_status · text

Aktuellt resultat av denna åtgärd. Använd motsvarande slutförande‑händelse innan du sparar framgång.

error_code · text

Felinformation för den senaste åtgärden. Visa ett hjälpsamt meddelande och erbjud relevant återförsök.

Händelser

selection_changed

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

files_saved

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

list_loaded

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

file_restored

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

file_deleted

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

share_sheet_closed

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

operation_cancelled

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

files_error

När denna händelse inträffar, läs de relaterade tillstånden från samma element.

Frågor som utvecklare ställer

Betyder Share “skickat”?

Nej. OS‑et tillhandahåller ingen pålitlig mottagarbevestyrkelse här. Visa “share sheet closed”.

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.