Offline Files интерфейсі.
Offline Files интерфейсі.
← Барлық Bubble Native нұсқаулықтары

Xodera Plugins · Bubble Native

Xodera Offline Files Native

Есеп тіркемелерін және таңдалған файлдарды құрылғыда сақтап қойыңыз, кейін оларды қалпына келтіріңіз және пайдаланушыға таңдалған көшірмесін бөлісуге мүмкіндік беріңіз.

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.

Құжаттама қаралды 6 қараша 2026

Практикалық мысалдар

Есепті жібермес бұрын бірнеше жергілікті тіркемелерді дайындаңыз

Форма таңдалған файлдарды көрсетуі керек және пайдаланушыға бұлтқа жіберілмес бұрын басқарылатын көшірмесін сақтауға мүмкіндік беруі керек.

`accepted_mime_types_json = your allowed MIME list`; `multiple = yes`; `max_files`, `max_file_bytes` және тіркелгі/есеп үшін `document_context` мәндерін орнатыңыз.

Pick files → таңдалған атаулар/өлшемдерді тексеру → Save selection locally. Сіздің форма алынған файл ID-лерін бөлек Submit жұмыс ағыны мақұлданған файлдарды жүктегенше сақтайды.

Шолу тізімін көрсету үшін `selection_count`, `file_names`, `file_sizes` және `saved_file_ids` пайдаланыңыз. Сақталған басқарылатын көшірме шақырушының түпнұсқасын сақтайды.

Бас тартылған таңдағыш жіберілген есеп емес. `files_error` кезінде, бұрын қабылданған жергілікті ID-лерді сақтап, `error_code` көрсетіңіз; жергілікті URI-дан ғана бұлт тіркемесін ешқашан жасамаңыз.

Файлдар бұл құрылғыда бөлісілгенге немесе бөлек жүктелгенге дейін сақталады.

Сурет өңдегішінің немесе аудио жазғыштың нәтижесін кейінгі қолдану үшін сақтаңыз.

Жасалған жергілікті файл уақытша жерде орналасуы мүмкін; қолданба нақты басқарылатын көшірмесін талап етеді.

`source_uri = the local output of a separately accepted editor/recorder`; оның нақты `display_name` және `mime_type` байланыстырыңыз; сол иесінің `document_context` пайдаланыңыз.

Load local source → метадеректерді тексеру → Save selection locally. Қайтарылған файл ID-ін тек сәйкес құрылғы/контекстте сақтаңыз, қажет болғанда дәл сол ID бойынша Restore saved file орындаңыз.

`file_id`, `local_uri`, `size_bytes` және `is_saved_locally` пайдаланыңыз; аяқталған қалпына келтіруді тек сұрауынан ажырату үшін `file_restored` қолданыңыз.

Қашықтағы HTTP URL-ды жергілікті дереккөз ретінде қабылдамаңыз. Егер дереккөз жоғалып кетсе немесе қалпына келтіру сәтсіз болса, `error_code` көрсетіңіз және қалпына келтіру үшін бастапқы қолданба жазбасын сақтаңыз.

Файлдар бұл құрылғыда бөлісілгенге немесе бөлек жүктелгенге дейін сақталады.

Пайдаланушыға қолданба жасаған жергілікті түбіртекті немесе экспортты бөлісуге мүмкіндік беріңіз.

Қолданба таңдалған жергілікті файлды құрылғының бөлісу мәзіріне беруі керек, жалпы URL жасау орнына.

`selected_file_id = the exact managed copy chosen from your app’s saved-file list`; оның атауы және MIME нақты жергілікті файлды сипаттайды.

Пайдаланушы Share түймесін басқаннан кейін List saved files → Restore saved file → Share selected file. Сақталған көшірмені олар нақты Delete saved copy таңдағанша сақтаңыз.

Бөлісу мәзірі жабылғаннан кейін UI жаңарту үшін `share_status` және `share_sheet_closed` пайдаланыңыз. Басқа мақсатты бөлісу үшін файл ID-ін сақтап қойыңыз.

Бөлісу мәзірінің жабылуы электрондық поштаның немесе хабарламаның жеткізілгенін дәлелдемейді. Бас тартуды және `files_error` оқиғасын өңдегенде, алушыға жеткізу сәтті аяқталды деп хабарламаңыз.

Файлдар бұл құрылғыда бөлісілгенге немесе бөлек жүктелгенге дейін сақталады.

Қазір жұмыс істейтіндер

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.

Жұмыс ағынын құрыңыз

Төмендегі қолжетімді бета әрекеттерін пайдаланып, нәтижені мақсатты құрылғыларыңызда тексеріңіз.

Бұл мысалдар Lesson, Message және Order сияқты қолданба жазбаларын пайдаланады. Оларды өзіңіздің деректер түрлеріңіз бен элемент атауларыңызбен ауыстырыңыз. Мысал медиа мекенжайлары өз файлдарыңызбен ауыстырылуы керек.

  1. document_context = Current User's unique id орнатыңыз, немесе тіркелгі мен есеп үшін тұрақты мәнді. accepted_mime_types_json, max_files және max_file_bytes таңдаңыз.

  2. Pick files іске қосыңыз, немесе Photo Editor немесе Recorder жасаған оқылатын файл үшін Load local source пайдаланыңыз. selection_changed кейін сәйкес файл тізімдерін оқыңыз; Select picked file индекс таңдайды.

  3. Save selection locally іске қосыңыз. files_saved кейін saved_file_ids-ді қолданбаңыздың жергілікті тіркеме жазбасында сақтаңыз. List saved files сақталған көшірмелерді көрсетеді; Restore saved file таңдалған сақталған ID-ны ашады.

  4. Share selected file жүйе бөлісу мәзірін ашады. share_sheet_closed тек мәзір жабылғанын білдіреді. Delete saved copy таңдалған ID және confirm=yes қажет етеді.

Жұмыс ағыны диаграммасы — қолданба скриншоты емес

Бір рет баптаңыз

Bubble қолданба жобасын BestPlugins → Dashboard → Plugins ішінде жасаңыз немесе таңдаңыз. Xodera Offline Files Native таңдаңыз, оның кілтін көшіріңіз, содан кейін Bubble → Plugins → Xodera Offline Files Native ашып, оны licensing_api_key ішіне қойыңыз. Бір рет сақтаңыз; содан кейін төмендегі әрекеттерді пайдаланыңыз. Әр жобадағы әр плагиннің өз кілті бар.

Таңдалған файлдарға қол жеткізетін Bubble Native қолданбасын пайдаланыңыз. Тіркелгі немесе есеп үшін тұрақты document_context орнатыңыз, сонда сақталған файлдары дұрыс топталады.

Бір рет баптаңыз
  1. Bubble қолданба жобасын BestPlugins → Dashboard → Plugins ішінде жасаңыз немесе таңдаңыз.
  2. Осы плагинді таңдаңыз және оның жоба кілтін көшіріңіз.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Элементті қосыңыз, қолданба деректеріңізді таңдаңыз және төмендегі жұмыс ағынын құрыңыз.
  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.
Орнату және жазылу

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.

Нәтижені қолданбаңызда сақтаңыз

Мысал LocalAttachment: иесі, document_context, сақталған файл ID, display_name, mime_type және size_bytes. Бұл ID тек сол құрылғыда және сол тіркелгі немесе есеп үшін жұмыс істейді. Онлайн тіркеме үшін файлды бөлек жұмыс ағынымен жүктеп, қайтарылған онлайн файл сілтемесін сақтаңыз.

Қателік, болдырмау және қалпына келтіру

Бас тартылған таңдағыш operation_cancelled қайтарады; ол форманы жібермейді. native_pending=yes кезінде, басқа таңдағышты ашпас бұрын файл таңдағышының немесе бөлісу мәзірінің жабылуын күтіңіз. Clear session ағымдағы таңдауды тазалайды, бірақ сақталған көшірмелерді сақтайды. Файл жоқ болса, пайдаланушыға оны қайта таңдауға мүмкіндік беріңіз.

Мүмкіндіктер және шектеулер

1–20 файлдарын бірден таңдаңыз. Файлға шектеу: 1 байт–256 MiB, таңдасаңыз төменгі шектеу болады. Файл түрі сүзгілері файлдарды вирустарға тексермейді. Құрылғы файл ID-лері және жолдары бұлттан жүктеп алу сілтемелері ретінде жұмыс істемейді. Жергілікті көшірмелер шифрленген сақтау емес және қолданба деректері жойылса жоғалуы мүмкін.

Параметрлер, әрекеттер және нәтижелер

Бұл атауларды Bubble ішінде пайдаланыңыз. Жоспарланған мүмкіндіктер бөлек белгіленген.

Қолжетімді бета параметрлері

Элемент параметрлері

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

Күйлер

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 (тізім)file_uris · text (тізім)file_names · text (тізім)file_mime_types · text (тізім)file_sizes · number (тізім)files_json · textsaved_count · numbersaved_file_ids · text (тізім)saved_file_uris · text (тізім)saved_file_names · text (тізім)saved_file_mime_types · text (тізім)saved_file_sizes · number (тізім)saved_files_json · textinvalid_saved_count · numbershare_status · texterror_code · text

Оқиғалар

selection_changedfiles_savedlist_loadedfile_restoredfile_deletedshare_sheet_closedoperation_cancelledfiles_error

Әрекеттер және олардың енгізулері

Pick filesLoad local sourceSelect picked fileSave selection locallyList saved filesRestore saved fileDelete saved copyShare selected fileCancel operationClear session
Элемент параметрлері · 16
source_uritext · Әдепкі: ""
Мысал мәніfile:///app-cache/report.pdf
Мысал Bubble өрнегіPhoto Editor's output_uri
Осы құрылғыдағы оқуға болатын файл орналасуы, таңдағышыңыз немесе басқа плагин арқылы қайтарылған.
display_nametext · Әдепкі: ""
Мысал мәніreport-photo.jpg
Мысал Bubble өрнегіSelected Attachment's display_name
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
mime_typetext · Әдепкі: ""
Мысал мәніimage/jpeg
Мысал Bubble өрнегіPhoto Editor's output_mime
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
document_contexttext · Әдепкі: "default"
Мысал мәні<current-user-id>
Мысал Bubble өрнегіCurrent User's unique id
Бұл есептік жазба немесе жазба үшін тұрақты мән. Сақталған файлдарды немесе нобайларды қалпына келтіру кезінде сол мәнді пайдаланыңыз.
selected_file_idtext · Әдепкі: ""
Мысал мәні<returned saved file ID>
Мысал Bubble өрнегіSelected LocalAttachment's local_file_id
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
accepted_mime_types_jsontext · Әдепкі: "[\"*/*\"]"
Мысал мәні["image/*","application/pdf"]
Мысал Bubble өрнегіReport Settings' accepted_mime_types_json
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
multipleyes_no · Әдепкі: false
Мысал мәніyes
Мысал Bubble өрнегіReport Settings' allow_multiple_attachments
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
copy_to_cacheyes_no · Әдепкі: true
Мысал мәніyes
Мысал Bubble өрнегіReport Settings' copy_to_cache
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
max_filesnumber · Әдепкі: 20
Мысал мәні5
Мысал Bubble өрнегіReport Settings' attachment_limit
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
max_file_bytesnumber · Әдепкі: 268435456
Мысал мәні10485760
Мысал Bubble өрнегіReport Settings' max_attachment_bytes
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
is_activeyes_no · Әдепкі: true
Мысал мәніyes
Мысал Bubble өрнегіGuideHost's view_is_active (your yes/no custom state)
Бұл көрініс ашық кезде yes (иә) мәнін орнатыңыз. Шыққанда no (жоқ) мәнін орнатыңыз, сонда ойнатуды немесе ағымдағы жұмысты тоқтатуға болады.
disabledyes_no · Әдепкі: false
Мысал мәніno
Мысал Bubble өрнегіGuideHost's is_busy (your yes/no custom state)
Қолданбаңыз бос емес немесе бұл әрекет қолжетімсіз болғанда элементті сөндіріңіз.
show_controlsyes_no · Әдепкі: true
Мысал мәніyes
Мысал Bubble өрнегіApp Settings' show_editor_controls
Құрамындағы басқару элементтерін көрсету немесе жасыру.
languagetext · Әдепкі: "auto"
Мысал мәніuk
Мысал Bubble өрнегіCurrent User's preferred_language
language=auto-ны қолдау көрсетілген құрылғы немесе шолғыш тілін қадағалау үшін орнатыңыз. Нақты таңдау үшін қолдау көрсетілген тіл кодын енгізіңіз.
ui_text_jsontext · Әдепкі: ""
Мысал мәні{}
Мысал Bubble өрнегіApp Settings' player_labels_json (supported keys only)
Қолдау көрсетілген батырма белгілері бар қосымша JSON. Кіріктірілген мәтінді пайдалану үшін бос қалдырыңыз.
titletext · Әдепкі: ""
Мысал мәніLesson 4 — review
Мысал Bubble өрнегіSelected Lesson's name
Қолданбада көрінетін мәтін; бос болса, қолдау бар жерде кіріктірілген аударылған мәтін пайдаланылады. Кіруге арналған құпия мәліметтерді енгізбеңіз.
Әрекеттер және олардың енгізулері · 10
Pick files

Әрекет параметрлері жоқ

Load local source
source_uritext · Әдепкі: —
Мысал мәніfile:///app-cache/report.pdf
Мысал Bubble өрнегіPhoto Editor's output_uri
Осы құрылғыдағы оқуға болатын файл орналасуы, таңдағышыңыз немесе басқа плагин арқылы қайтарылған.
display_nametext · Әдепкі: —
Мысал мәніreport-photo.jpg
Мысал Bubble өрнегіSelected Attachment's display_name
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
mime_typetext · Әдепкі: —
Мысал мәніimage/jpeg
Мысал Bubble өрнегіPhoto Editor's output_mime
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
Select picked file
indexnumber · Әдепкі: —
Мысал мәні0
Мысал Bubble өрнегіSelected row's current_source_index
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
Save selection locally

Әрекет параметрлері жоқ

List saved files

Әрекет параметрлері жоқ

Restore saved file
file_idtext · Әдепкі: —
Мысал мәні<returned saved file ID>
Мысал Bubble өрнегіSelected LocalAttachment's local_file_id
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
Delete saved copy
file_idtext · Әдепкі: —
Мысал мәні<returned saved file ID>
Мысал Bubble өрнегіSelected LocalAttachment's local_file_id
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
confirmyes_no · Әдепкі: —
Мысал мәніyes — explicit confirmation only
Мысал Bubble өрнегіConfirm Checkbox is checked
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
Share selected file
dialog_titletext · Әдепкі: —
Мысал мәніShare attachment
Мысал Bubble өрнегіSelected Report's share_title
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
utitext · Әдепкі: —
Мысал мәні""
Мысал Bubble өрнегіEmpty unless your iOS integration supplies a proven UTI
Ағымдағы бизнес жазбасының мәнін пайдаланыңыз; оны төмендегі шектеулерге тексеріңіз.
Cancel operation

Әрекет параметрлері жоқ

Clear session

Әрекет параметрлері жоқ

Күйлер және оқиғалар

Күйлер

status · text

Бұл әрекеттің ағымдағы нәтижесі. Сәтті сақтаудан бұрын сәйкес аяқталу оқиғасын пайдаланыңыз.

is_busy · yes_no

Жұмыс әлі де жүріп жатыр. Келесі әрекетті бастау алдында күтіңіз.

native_pending · yes_no

Жұмыс әлі де жүріп жатыр. Келесі әрекетті бастау алдында күтіңіз.

operation · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

selection_count · number

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

selected_index · number

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

file_id · text

Бұл элемент немесе әрекет үшін идентификатор. Оны сәйкес қолданба жазбасымен бірге сақтаңыз. Белгісіз нәтиже қайталап жіберілсе, бірдей сұрау идентификаторын пайдаланыңыз.

local_uri · text

Бұл құрылғыдағы файл орналасуы. Файлды онлайн сақтау қажет болса, оны бөлек сақтап немесе жүктеп салыңыз.

display_name · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

mime_type · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

mime_source · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

size_bytes · number

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

is_saved_locally · yes_no

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

file_ids · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

file_uris · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

file_names · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

file_mime_types · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

file_sizes · number (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

files_json · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

saved_count · number

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

saved_file_ids · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

saved_file_uris · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

saved_file_names · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

saved_file_mime_types · text (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

saved_file_sizes · number (тізім)

Таңдалған файлдар тізімі. Басқа файл тізімдеріндегі бірдей индексдегі элементтер сол файлға сілтейді.

saved_files_json · text

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

invalid_saved_count · number

Таңдалған элементтің ағымдағы мәні. Оны қатысты оқиғадан кейін оқыңыз.

share_status · text

Бұл әрекеттің ағымдағы нәтижесі. Сәтті сақтаудан бұрын сәйкес аяқталу оқиғасын пайдаланыңыз.

error_code · text

Соңғы әрекет үшін қате ақпараты. Көмекші хабарды көрсетіп, тиісті қайталау нұсқасын ұсыныңыз.

Оқиғалар

selection_changed

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

files_saved

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

list_loaded

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

file_restored

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

file_deleted

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

share_sheet_closed

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

operation_cancelled

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

files_error

Бұл оқиға болғанда, сол элементтен қатысты күйдерді оқыңыз.

Әзірлеушілердің сұрақтары

Share “жіберілді” дегенді білдіре ме?

Жоқ. ОЖ мұнда файлдың алушыға сәтті жеткені туралы сенімді растау бермейді. “Бөлісу терезесі жабылды” деп көрсетіңіз.

Жазылу қалай жұмыс істейді?

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.

Қатысты нұсқаулықтар

Көмек алу үшін, қандай плагин мен құрылғыны пайдаланатыныңызды, қандай әрекетті орындағаныңызды және не болғанын айтыңыз. Жеке деректерсіз мысал қолданыңыз. Кілтіңізді немесе жеке файлдарыңызды ешқашан бөліспеңіз.