Works on Android 8.0+
Minimum supported version is Android 8.0 Oreo (API 26). It is built and tested against Android 14 (API 34). Phones and tablets are both supported.
Download
One APK, no account, no store fees, no bundled installer. The whole app is 2.5 MB and works the moment it is installed.
Release build · Version 1.0.0 (versionCode 1) · Android 8.0+
Minimum supported version is Android 8.0 Oreo (API 26). It is built and tested against Android 14 (API 34). Phones and tablets are both supported.
The release APK shrinks resources and minifies code. There are no bundled web views, no ad SDKs and no background network calls.
Installing a newer build over an existing one preserves your database and settings. Your tasks live in the app's private storage, not in the APK.
Installation
Because TaskFlow is distributed directly rather than through Google Play, Android will ask you to allow installs from your browser or file manager the first time.
Tap the download button at the top of this page on the device you want to install it on. The file is taskflow-1.0.0-release.apk.
Open your notifications and tap the downloaded file, or find it in your Files app under Downloads.
Android will say that your browser (or Files app) cannot install unknown apps. Tap Settings, enable Allow from this source, then go back.
Tap Install. If Play Protect shows a warning about an unknown developer, choose Install anyway — TaskFlow is not distributed through the Play Store.
You will get three short onboarding pages, then your Inbox. Tap the + button and try Call the dentist tomorrow 3pm #Health !high.
Playing it safe: if you would rather not install an APK from a website, that is a completely reasonable position. The alternative is to build it yourself from source with ./gradlew :app:assembleRelease — see the developer notes.
Verify
Anyone can publish a file named app-release.apk. If you want certainty, compare the SHA-256 checksum of your download with the value below, or scan the file with your own tooling before installing.
5d5b2f4874feaddcd5ed77445199e38ea67d5ae85ce8d6ead26c1dbebf2cb623
| File name | taskflow-1.0.0-release.apk |
| Version | 1.0.0 (versionCode 1) |
| Size | 2,615,984 bytes (2.5 MB) |
| Package | com.taskflow |
| Min Android | 8.0 Oreo (API 26) |
| Target Android | 14 (API 34) |
| Build type | Release — minified, resources shrunk |
SHA-256 of the debug build, if you are testing that one instead: f9c718e09791fa172977ae0476df2d6b36f845c0949649c6c0fe8cda7818cafb
Permissions
TaskFlow requests five Android permissions. None of them can reach the network, and the internet permission is not requested at all.
| Permission | What it is for | Can you refuse? |
|---|---|---|
| Notifications POST_NOTIFICATIONS |
Showing task reminders, the daily summary, the weekly review and the Pomodoro controls. | Yes. The app works fully without it; you simply get no reminders. |
| Exact alarms SCHEDULE_EXACT_ALARM |
Firing a reminder at the exact minute you asked for rather than in a loose window. | Yes. If refused, reminders fall back to inexact alarms. |
| Start at boot RECEIVE_BOOT_COMPLETED |
Re-arming your pending reminders after the phone restarts, so nothing is silently lost. | Granted automatically; it cannot read your data. |
| Vibrate VIBRATE |
Vibrating with a notification when your phone is on silent. | Granted automatically; you control it in Android settings. |
| Foreground service FOREGROUND_SERVICE_SPECIAL_USE |
Keeping the Pomodoro countdown accurate while you are in another app, with a visible ongoing notification. | Only runs while a timer is active, and stops when you stop it. |
| Internet INTERNET |
Nothing — the permission is not requested by the app. | Not applicable. With no network permission, the app cannot transmit data even in principle. |
Full detail, including what is stored and for how long, is in the privacy policy.
Download the new APK and install it over the old one. Android keeps your database and settings as long as the package name (com.taskflow) is unchanged. There is no in-app updater and no store listing to notify you, so check this page when you want a new build.
On the old phone open Settings → Data and export JSON (which keeps projects, labels, reminders and saved filters) or CSV (tasks only). Move the file across with your usual method, then use Import on the new phone. Import is transactional: if anything fails, nothing is half-written.
Uninstalling removes the app's private storage, including the database, attachments and settings. There is no cloud copy to restore from, so export first if you might come back.
Yes. The project is a standard Gradle Android build. With JDK 17 and the Android SDK installed:
Release builds are currently signed with the debug keystore so that the build succeeds without a private key, which is why this page recommends installing the provided build rather than treating it as a Play Store artefact.
Three tasks is enough to see whether the Today view earns its place on your home screen.