docs: add privacy policy
This commit is contained in:
+192
@@ -0,0 +1,192 @@
|
||||
---
|
||||
title: Privacy Policy — Clockula
|
||||
description: What Clockula does with your data. It collects nothing, sends nothing, and has no internet permission at all.
|
||||
updated: 2026-10-02
|
||||
---
|
||||
|
||||
<!--
|
||||
THIS FILE IS THE POLICY. Edit it here, in a PR, reviewed like any other
|
||||
change. It is the source of truth.
|
||||
|
||||
It is published at https://jeanlucmakiola.de/clockula/privacy, which is the
|
||||
address for the app's privacy-policy link and the Play Console field. That
|
||||
page holds no copy of the prose: the website build checks this repository out
|
||||
beside itself and renders this file through an Astro content collection, so
|
||||
there is exactly one copy of the policy anywhere and the two cannot drift. An
|
||||
edit here reaches the live page on the site's next build.
|
||||
|
||||
The page supplies its own <h1> from the `title` above, so this body starts at
|
||||
the first section. Do not add one. This comment is HTML so that it cannot
|
||||
render on the published page.
|
||||
-->
|
||||
|
||||
**Last updated:** 2 October 2026
|
||||
Applies to the Android app **Clockula** (package `de.jeanlucmakiola.clockula`),
|
||||
all versions and all distribution channels.
|
||||
|
||||
## In short
|
||||
|
||||
Clockula collects nothing, sends nothing, and has no user accounts. It has no
|
||||
internet permission, so it cannot transmit your data anywhere. Your alarms,
|
||||
timers and world clocks are stored on your device and nowhere else.
|
||||
|
||||
## 1. Controller
|
||||
|
||||
IT-Dienstleister | Jean-Luc Makiola
|
||||
Mahlerstraße 10
|
||||
14772 Brandenburg an der Havel
|
||||
Email: [support@jeanlucmakiola.de](mailto:support@jeanlucmakiola.de)
|
||||
|
||||
## 2. No data collection
|
||||
|
||||
Clockula contains no analytics, tracking, advertising, crash-reporting SDK or
|
||||
third-party service of any kind. It creates no user profile and generates no
|
||||
identifier, and it shares or sells no data to anyone.
|
||||
|
||||
The app does not request the `android.permission.INTERNET` permission, and
|
||||
without it Android does not let an app open a network connection. You can check
|
||||
this yourself in the permission list of any released APK, or in the
|
||||
[source code](https://codeberg.org/jlmakiola/clockula).
|
||||
|
||||
## 3. Data Clockula keeps on your device
|
||||
|
||||
Everything below is processed locally on your device. None of it is
|
||||
transmitted, and the developer never receives or stores any of it.
|
||||
|
||||
### Alarms, timers, stopwatch and world clocks
|
||||
|
||||
Clockula keeps its own database in the app's private storage. It holds your
|
||||
alarms (time, repeat days, label, sound and similar options), your timers and
|
||||
their labels, the stopwatch and its laps, and the list of cities you added as
|
||||
world clocks. No other app can read this database. Uninstalling Clockula
|
||||
deletes it.
|
||||
|
||||
World clock times are calculated from the time zone data built into Android.
|
||||
Adding a city does not look anything up online.
|
||||
|
||||
### Other apps setting alarms
|
||||
|
||||
Clockula supports Android's standard alarm interface, so a voice assistant or
|
||||
automation app can set, show or dismiss alarms and timers in Clockula. Android
|
||||
only lets apps that declare the `SET_ALARM` permission do this. Clockula
|
||||
receives what that app sends (for example a time and a label) and stores it
|
||||
like an alarm you created yourself. It sends nothing back beyond the result of
|
||||
the request.
|
||||
|
||||
### Alarm and timer sounds
|
||||
|
||||
You can choose one of the ringtones that come with your device, or pick your
|
||||
own audio file through Android's system file picker. Clockula can then read
|
||||
exactly that file, so it can play it when the alarm rings. It has no access to
|
||||
your other files.
|
||||
|
||||
### Notifications and the lock screen
|
||||
|
||||
Alarms, timers and the running stopwatch appear as local notifications, and a
|
||||
ringing alarm can show a full-screen view over the lock screen. Android also
|
||||
shows your next alarm in the status bar and on the lock screen. None of this
|
||||
uses a push service.
|
||||
|
||||
### Home-screen widgets
|
||||
|
||||
The widgets show data from Clockula's own database, such as your next alarm,
|
||||
a running timer or the stopwatch. Each widget's style and settings are stored
|
||||
on your device.
|
||||
|
||||
### Backup files
|
||||
|
||||
Clockula can export your alarms, timers, world clocks and settings to a
|
||||
`clockula-backup-v1.json` file in a folder you pick, and import such a file
|
||||
again. The app reads and writes only the folder or file you select through
|
||||
Android's system file picker. The file contains your alarm and timer labels,
|
||||
so treat it like any other personal file when you move or share it.
|
||||
|
||||
### App settings
|
||||
|
||||
Your preferences (theme, language, snooze length, default sounds and similar)
|
||||
are stored on your device and are removed when you uninstall the app.
|
||||
|
||||
## 4. Android backup
|
||||
|
||||
If Android Auto Backup is turned on for your device, Android may back up
|
||||
Clockula's database and settings to your own Google account, under Google's
|
||||
terms. The developer has no access to that backup. You can turn Auto Backup off
|
||||
in your device's system settings.
|
||||
|
||||
## 5. Crash reports: the only case where data can leave your device
|
||||
|
||||
If Clockula crashes, it offers to report the problem. It never sends anything
|
||||
on its own. The report is copied to your clipboard and your browser opens the
|
||||
project's issue tracker with the text filled in. You can read the full report,
|
||||
edit it, or discard it, and nothing is submitted unless you submit it.
|
||||
|
||||
The report contains:
|
||||
|
||||
- the app version,
|
||||
- the Android version,
|
||||
- the device manufacturer and model,
|
||||
- your device language,
|
||||
- the time of the crash,
|
||||
- and the technical stack trace.
|
||||
|
||||
It contains no alarms, timers, labels or other personal data.
|
||||
|
||||
If you submit it, the report becomes a public issue on the project's issue
|
||||
tracker at Codeberg, which Codeberg e. V. operates. Their privacy policy
|
||||
applies to that submission.
|
||||
|
||||
## 6. External links
|
||||
|
||||
The settings screen links to the source code, the licence, the issue tracker
|
||||
and a voluntary donation page (Ko-fi). The "Why might my alarm not ring?"
|
||||
check can also link to dontkillmyapp.com, which explains battery restrictions
|
||||
for your phone's manufacturer. Opening any of these links starts your browser
|
||||
and leaves the app, and the privacy policy of that website applies from then
|
||||
on. Clockula only opens the address and sends no data of yours with it.
|
||||
|
||||
## 7. Permissions and why they exist
|
||||
|
||||
- `USE_EXACT_ALARM`, `SCHEDULE_EXACT_ALARM`: ring alarms and timers at the
|
||||
exact time.
|
||||
- `RECEIVE_BOOT_COMPLETED`: schedule the next alarm again after the phone
|
||||
restarts.
|
||||
- `USE_FULL_SCREEN_INTENT`: show the ringing alarm over the lock screen.
|
||||
- `POST_NOTIFICATIONS`, `POST_PROMOTED_NOTIFICATIONS`: show alarm, timer and
|
||||
stopwatch notifications, including the live timer in the status bar.
|
||||
- `FOREGROUND_SERVICE`, `FOREGROUND_SERVICE_SYSTEM_EXEMPTED`,
|
||||
`FOREGROUND_SERVICE_SPECIAL_USE`: keep a ringing alarm, a running timer or the
|
||||
stopwatch going while the app is in the background.
|
||||
- `WAKE_LOCK`: keep the phone awake while an alarm or timer rings.
|
||||
- `VIBRATE`: vibrate when an alarm or timer rings.
|
||||
- `ACCESS_NETWORK_STATE`: added by the Android library that updates the
|
||||
home-screen widgets (WorkManager). It lets an app see whether a network
|
||||
connection exists. It does not let it use one, and without `INTERNET` no
|
||||
connection is possible.
|
||||
|
||||
## 8. Distribution channels
|
||||
|
||||
Clockula is distributed through the project's releases on Codeberg, a
|
||||
self-hosted F-Droid repository, Obtainium and, where available, F-Droid and the
|
||||
Google Play Store. When you download or update the app, the operator of that
|
||||
channel processes data such as your IP address under its own privacy policy.
|
||||
The developer has no control over this, and it is separate from what the app
|
||||
itself does.
|
||||
|
||||
## 9. Children
|
||||
|
||||
Clockula is suitable for all ages. It collects no data from anyone, children
|
||||
included.
|
||||
|
||||
## 10. Your rights
|
||||
|
||||
The developer processes no personal data of yours, so there is no stored data
|
||||
to which the rights of access, rectification, erasure, restriction, data
|
||||
portability or objection (Art. 15–21 GDPR) could apply. You can still contact
|
||||
the address above with any question, and you have the right to lodge a
|
||||
complaint with a supervisory authority.
|
||||
|
||||
## 11. Changes to this policy
|
||||
|
||||
If a change to the app affects how it handles data, this policy will be updated
|
||||
and the date at the top changed. The history of this file is public in the
|
||||
project's repository.
|
||||
Reference in New Issue
Block a user