Kivmo Privacy Policy

Updated: 23 October 2026

This policy applies to Kivmo: Focus & Tasks (package com.livehere.focus), provided by ComfyLife (韦天鹏). Privacy and support contact: clarkwain@outlook.com.

How Kivmo works

Kivmo stores tasks and focus history locally. Core tasks and timers work without an account or network connection. Starting with version 2.1, the app includes optional Google Firebase Analytics and Crashlytics and uses Internet access for these services. There is no task cloud synchronization, advertising SDK or developer-operated account server. The local task database is not automatically uploaded.

Offline operation still involves processing information on your device. The following explains that processing and the optional device access you can enable.

Information processed on your device

Tasks, lists, folders, tags and subtasks: the names, notes, dates, priorities, reminder times, repeat rules and ordering that you enter are stored in the app's private local database.

Focus sessions: start and end times, duration, associated tasks and lists, completion state and manually added records are used for history, statistics and reports. Necessary session state is saved to restore a timer after interruption.

Preferences: timer lengths, break options, sounds, theme, reminder settings and goals are stored locally.

Optional app blocking: the app displays launchable app names and package names so you can choose allowed apps. If you grant usage access and enable app blocking, recent foreground app events are read locally to check your allowed list. Kivmo does not build or upload a long-term usage profile.

Optional notification blocking: if you grant notification access and enable the related focus mode, Android delivers notification events to Kivmo. Its current blocking logic uses the source package, notification identifiers and event state to keep or dismiss notifications. It does not read notification message text, store a notification-content history or send notification information to the developer.

Flip-phone mode: accelerometer readings are evaluated in memory to detect device orientation. A sensor history is not stored.

System language, time zone, device time and boot state support local formatting, scheduling and timer restoration. App-created task and session identifiers are used locally, rather than for advertising or cross-app tracking.

Reports: images you generate may contain task names, list names and focus data. App-private report files are stored locally until removed with app data; copies you save or share are stored in the locations or recipient apps you select.

The app does not request contacts, SMS, call-log, location, camera or microphone permissions. It has no integration to collect advertising identifiers, IMEI or OAID.

Optional permissions and device features

Notifications show timer status and local reminders. Alarm access supports reminder scheduling; when exact alarms are unavailable, scheduling may be delayed. Device battery and background restrictions can also affect reminders.

Displaying over other apps supports the floating timer and relevant focus-blocking tools. Usage access supports foreground-app detection for optional app blocking. Notification access supports optional notification-blocking rules. These accesses are not required to create tasks or use the basic in-app timer. Android may grant a notification listener the ability to receive other apps' notification events; enable it only when you want the related function.

Foreground service, wake-lock, vibration and boot events support a timer you started, local feedback and rescheduling reminders after restart. Flip-phone mode uses the device accelerometer.

You can manage notification, overlay, usage, notification-listener and alarm access in Android application settings and special app access settings. Turning a focus mode off does not itself revoke a special access already granted by Android; revoke that access in system settings when desired.

System services and actions you initiate

Kivmo uses Android's local database, notification, image saving, sharing and text-to-speech interfaces. It includes Google Firebase Analytics and Crashlytics for the optional purposes below, and the Google Play in-app update library. It does not include login, advertising, payment or remote-push SDKs.

Optional spoken reminders send timer reminder phrases to the system text-to-speech engine. The app selects voices the engine marks as not requiring a network connection. It does not send task titles, task notes or audio recordings to that engine. Your chosen engine and any voice-pack download are governed by that provider's own practices.

On Android 10 and later, saving a report writes an image to Pictures/Kivmo. On earlier supported versions, you choose a location through Android's document picker. The app does not request access to all your files or read your photo library for this operation.

When you share a report, Android lets you select a recipient app and grants that app access to the selected image. Review its contents before sending. The recipient's handling of the image is governed by its own practices. Kivmo does not automatically share the report with the developer.

If you open this policy in a browser or contact support, the website host, browser and email provider may process visit or message information under their own policies. Contacting support sends the information you choose to include; it does not automatically attach your local database.

Optional usage statistics and crash reports (2.1 and later)

Both collection options start disabled. The app explains the services before asking you to enable them. Declining does not affect tasks or timers. Open My > Usage statistics & diagnostics to change either choice independently.

Google Analytics for Firebase measures feature events, screen categories, app interactions, device/app information, approximate region inferred from the network connection and resettable app-instance identifiers. This helps improve the app. We do not attach task titles, notes, list names, task identifiers or notification contents. Advertising-ID collection, advertising personalization and advertising consent are disabled. We do not set an account-linked user ID.

Firebase Crashlytics reports crash/ANR stack traces, relevant app state, device/app metadata and installation identifiers for stability analysis. Firebase Sessions supplies app-quality metrics. We do not deliberately attach the task database, task text, notifications, email address or custom user ID. Technical details may appear in SDK diagnostics and crash stacks. When both options are enabled, Analytics events may appear as Crashlytics breadcrumbs.

The data is sent to Google over encrypted connections and processed on Google infrastructure, potentially outside your country. Google provides analytics and diagnostics on our behalf. See Firebase privacy and security, Google Privacy Policy and Analytics data collection. No precise-location permission is requested.

Disabling an option stops future reporting. Disabling Analytics resets local Analytics data and its instance identifier; disabling Crashlytics deletes queued unsent reports. Data already uploaded is not automatically erased by these switches. Crashlytics retains crash data and associated identifiers for 90 days before its removal process. Analytics event/user data follows the property retention setting (initially 2 months); aggregate standard reports may remain longer. Installation/service data follows the linked Firebase retention rules. Contact clarkwain@outlook.com for deletion assistance without sending your private database. Telemetry is not linked to email or an app account, so an individual report may not be identifiable from an email request alone.

Retention, deletion and your choices

App data stays in the app's private device storage until you remove it. Some individual deletion operations mark database entries as deleted to maintain history and consistency; they do not immediately erase the underlying database bytes. This version has no automatic expiry for all history.

To remove the complete local database, preferences, timer-recovery state and app-private reports, use Android's Clear storage / Clear app data command or uninstall Kivmo. This cannot be undone by the developer, who has no cloud copy. Reports previously saved to your photos, files or another app must be deleted separately in those locations.

Standard Android cloud backup and app data extraction are disabled for this version. Manufacturer migration tools and independent copies made by other apps remain outside the app's control.

You can view and edit your tasks and records, delete items and revoke optional accesses. Contact clarkwain@outlook.com for privacy questions or assistance with access, correction or deletion. Because your database is local, the developer cannot remotely read or erase it and can explain the relevant on-device steps. Please avoid sending unnecessary personal details, identity documents or an entire private database to support.

Children and policy updates

The app is a general productivity tool and does not have a child-specific account or data-collection service. A parent or guardian can contact the privacy address above about a child's use. Avoid entering unnecessary sensitive personal information in tasks or reports.

If the app's features or data practices change, this policy will be updated with a new date. New online services or expanded access will be explained before they are introduced where notice or permission is required.