Skip to content

Constanza 1.0.0

Choose a tag to compare

@jorgejiro jorgejiro released this 30 Sep 14:38
· 61 commits to main since this release
1e9a15d

One permission fewer, and the first version number that says "this is the real app".

Install

Open this page on the phone, tap constanza-1.0.0.apk, install over the previous version. It replaces 0.1.16 in place; your habits and history are kept.

What's new

Nothing changes on screen. The app no longer declares ACCESS_NETWORK_STATE.

Constanza never declared it on purpose. It came in with WorkManager, the Android library that runs the reminder work in the background: the library declares it so apps can say "only run this job when there is a network". Constanza never asks for that — nothing in it depends on the network, and it has no internet permission at all — so the entry only sat in the permission list with nothing to justify it. An F-Droid reviewer spotted it; it is now removed explicitly in the manifest.

The two other permissions WorkManager adds, WAKE_LOCK and FOREGROUND_SERVICE, stay. They grant access to none of your data, and removing them is not proven safe. The privacy policy now lists them.

The final permission list is SCHEDULE_EXACT_ALARM, POST_NOTIFICATIONS, RECEIVE_BOOT_COMPLETED, WAKE_LOCK and FOREGROUND_SERVICE, read from this APK with aapt2 dump permissions.

What is NOT verified

Reminders were checked on emulators (Android 12 and Android 17), not on a physical phone.

Verification

Emulator matrix (:app:emulatorMatrixGroupDebugAndroidTest): Android 12 (API 31) and Android 17 (API 37), 206 instrumented tests each, 0 failed (3 and 6 skipped), including the end-to-end core flow: permission dialog, add a habit, reminder notification arrives, answer it, remove the habit. Unit tests and detekt green.