Scheduled one-way export of local calendars to a user-chosen folder, overwriting calendula-backup.ics each run — the manual backup, automated. Not a sync; stays INTERNET-free (provider reads + local file write). - WorkManager periodic job (deps: work-runtime-ktx, documentfile); worker pulls collaborators via a Hilt @EntryPoint, so no custom WorkerFactory wiring. First periodic run is delayed one interval so it can't race the immediate "run now" feedback run; the writer also overwrites the canonical file and cleans up any "(1)" duplicates from earlier races. - SettingsPrefs: enabled, interval (minutes, floored at 30), folder Uri, last-run status; persisted SAF write grant. - UI in Calendars > Backup: toggle, folder picker, amount+unit interval dialog, last-run status line. Notifies after repeated failures. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6.5 KiB
6.5 KiB