piaomiaozhishang

screen-journal

Screen Time Journal is a Flutter-based screen-time tracking app for Android and Windows that emphasizes permanent data retention (surviving uninstalls and merging after reinstalls), custom categories/tags, and multi-device WebDAV sync.

1.1.13
Published at
13d ago
1
Stars
4
Download
Synced at
13d ago

Latest release

1.1.13Oct 6, 2026, 11:31 AM
Downloads slow? Switch the source anytime above

README

Project Overview

Screen Time Journal is a screen-time statistics app built around recording. Its main platform is Android, with a Windows desktop build sharing the same Flutter codebase. It tracks how much time you spend in each app on your phone and computer. Unlike most similar tools, its key selling point is permanent retention: usage records survive app uninstalls and are automatically recognized and merged when you reinstall, with a reinstall counter incremented by one. It also supports custom categories, multiple tags per app, and standard WebDAV sync across devices. It addresses the common problems of data loss, poor categorization, and lack of cross-device visibility in ordinary screen-time tools.

Key Features

  • Categories and tags: ships with four built-in categories (games, novels, anime, film/TV) that you can rename, recolor, re-icon, or delete, plus freely created custom categories (12 colors, 23 icons, and custom category images with 1:1 cropping); an app can carry multiple category tags and is counted once under each; newly installed apps fall back to Uncategorized.
  • Permanent records (core differentiator): granularity covers day, week, month, year, and all-time, plus custom date ranges (any start/end within the last 5 years); data is stored by app + device + day, so records remain after an app is uninstalled and are merged on reinstall; on first use you can import the historical usage already kept by the system instead of starting from zero.
  • App details: shows today, this week, this month, this year, and all-time durations, a smooth trend wave chart and a 24-hour timeline, plus daily average, current streak, longest streak, and peak single-day usage; you can manually edit the install date and add an app description and a 1-10 rating; you can also add a software source note and links (GitHub, cloud drives, Telegram, app stores) that open the corresponding app or browser.
  • Daily usage limits: set a per-app daily minute cap; when reached, a full-screen reminder appears and returns you to the desktop to help curb overuse.
  • WebDAV sync and backup: manual one-click sync that only transfers usage statistics and the app dictionary, merging incrementally by device and day without overwriting or deleting; phones and computers connected to the same WebDAV account interoperate; a separate manual full backup exports a single JSON (all statistics, categories, ratings, descriptions, sources, limits, install dates), and import supports incremental merge or overwrite restore.
  • Comparison and UI: dual-bar charts and period-over-period change for today vs yesterday, this week vs last week, this month vs last month, and this year vs last year; the ring chart supports tapping a sector to enlarge and highlight it; themes follow system, light, or dark and offer 12 full UI color schemes (Material 3); supports Chinese and English languages.
  • Launch on boot: Android restores the monitoring service via a boot broadcast, and Windows writes a per-user startup registry entry.

Target Audience

  • Users who want to seriously record and long-term preserve their screen habits
  • Users who want to organize app usage by games, novels, anime, film/TV, and other categories
  • Multi-device users who need to sync usage data between phone and computer
  • Self-managers or parents who want to enforce daily limits
  • Developers who like Flutter and want to compile or customize an Android/Windows app themselves

Quick Start

  1. Download the latest 屏记-vX.X.X-release.apk from the Releases page and install it on your Android phone (allow unknown sources on first install); installing over an existing version upgrades it without data loss.
  2. On first launch, follow the guide to grant permissions: Usage Access (core, reads usage statistics), battery optimization whitelist or vendor autostart (keeps the background service alive), overlay and notification (limit reminders and the persistent service); Accessibility is optional and used only to return to the desktop when a limit is hit.
  3. Open the app to view data across the four bottom tabs (Statistics, Categories, Compare, Settings); tag new apps on the Categories page and locate them quickly with search or the A-Z index (Chinese by pinyin).
  4. To backfill history, use the one-click import to pull in the usage history the system has already retained.
  5. For multi-device sync, configure WebDAV in Settings: enter the server URL (e.g. Nutstore https://dav.jianguoyun.com/dav/), username and app password, and a sync directory (e.g. screentime, created automatically if missing), then tap sync manually.
  6. For the desktop build, compile in the same Flutter project with flutter build windows; Windows builds require Developer Mode enabled to support symlinks.

Core Advantages

  • Permanent retention: data survives uninstalls and merges on reinstall, solving the pain of easily lost screen-time data
  • Categorized and multi-tag: one app can belong to several categories, matching real usage better
  • Data ownership: data stays local by default and syncs through your own standard WebDAV, with no reliance on third-party clouds
  • Dual platform: Android and Windows share one Flutter codebase for a consistent experience
  • Open source and free: MIT licensed, freely compilable, customizable, and extensible

System Requirements

  • OS: Android (minSdk 24, targetSdk following Flutter); Windows (self-building requires Visual Studio with the Desktop development with C++ workload)
  • Architecture: common Android ABIs (e.g. ARM); Windows x64
  • Additional dependencies: no server required; multi-device sync needs your own WebDAV service (Nutstore, Synology, Nextcloud, self-hosted, etc.)

Notes

  • Ordinary third-party Android apps cannot force-stop other apps; the limit feature only shows a full-screen reminder and returns to the desktop when a limit is reached, not a system-level hard block. Accessibility is used only to perform the return-to-desktop action and does not monitor, read, or upload any screen content.
  • The Windows build has no system usage history, so it can only track from the moment this app is installed.
  • Release builds use an official signing key; back up the keystore file and password offline, since loss or leakage would prevent updating published versions.
  • Signing key files are not committed to the repository and must be kept by yourself.

Release history

Sort