Repository navigation
Releases: WEITERFUNKEN-Thomas/pixelcomfort
Release list
PixelComfort v1.7 – Verlauf aktualisiert sich
Verlauf aktualisiert sich
- Verlauf bleibt aktuell: Ist der Verlauf offen und man wechselt kurz in eine andere App (z. B. Fotos), erscheint der neue Eintrag jetzt sofort, wenn man in PixelComfort zurückkehrt. Bisher musste man den Verlauf dafür neu öffnen. Hinweis aus dem F-Droid-Test.
PixelComfort gibt es jetzt auch auf F-Droid: https://f-droid.org/packages/com.noirdraco.pixelcomfort/
Beim Update beachten
- Keine neuen Berechtigungen.
- Signiert mit demselben Zertifikat wie v1.0–v1.6 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
Getestet
Auf dem Pixel 10 Pro (Android 17): offener Verlauf zeigt die Pause für Fotos nach der Rückkehr sofort an. 73 Unit-Tests. Build reproduzierbar.
SHA-256 der APK: 93506906a77eceb656082695b060427311c54b3f963627e149c9de66d7d59c45
English
- History: an open history now refreshes when you return to the app, so a new entry shows up right away.
- PixelComfort is now on F-Droid: https://f-droid.org/packages/com.noirdraco.pixelcomfort/
- No new permissions. Signed with the same certificate as v1.0–v1.6, so install it over the existing version.
PixelComfort v1.6 – Zwei Hinweise aus dem F-Droid-Test behoben
Zwei Hinweise aus dem F-Droid-Test behoben
- Fehlende Einstellung wird erkannt: Gibt es die Augenkomfort-Einstellung auf einem Gerät nicht (z. B. im Emulator oder auf Geräten ohne Augenkomfort), zeigt die Startseite jetzt „Einstellung auf diesem Gerät nicht gefunden – siehe Erweitert“ statt fälschlich „Shizuku läuft nicht“.
- Verlauf ohne Doppelungen: Eine ausgelassene Pause („Wert nicht lesbar“) wird nur noch einmal je App-Start eingetragen, nicht für jedes Fenster der App.
Beim Update beachten
- Keine neuen Berechtigungen.
- Signiert mit demselben Zertifikat wie v1.0–v1.5 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
Getestet
Auf dem Pixel 10 Pro (Android 17): Kamera und Fotos (Augenkomfort aus und exakt zurück, ausgeschaltet bleibt aus), Hauptschalter. 73 Unit-Tests. Build reproduzierbar.
SHA-256 der APK: 807c52027fe44acdb3f2d26a0a528f8ffc78016decc5deb9a681abe86507d10a
English
- If the eye comfort setting does not exist on a device, the home screen now says “Setting not found on this device – see Advanced” instead of “Shizuku isn’t running”.
- History: a skipped pause is logged only once per app start, not once per window.
- No new permissions. Signed with the same certificate as v1.0–v1.5, so install it over the existing version.
PixelComfort v1.5 – Deutlich kleinere APK
Deutlich kleinere APK
- Rund 1,5 MB statt 8,5 MB: Code und Ressourcen werden jetzt mit R8 verkleinert (von F-Droid im Review gewünscht).
- Keine Änderung an den Funktionen.
- Klassen- und Methodennamen bleiben lesbar (keine Verschleierung), der Build ist weiterhin reproduzierbar.
Beim Update beachten
- Keine neuen Berechtigungen.
- Signiert mit demselben Zertifikat wie v1.0–v1.4 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
- Kurz prüfen, ob die Bedienungshilfe danach aktiv ist (Startseite: „Alles eingerichtet“).
Getestet
Auf dem Pixel 10 Pro (Android 17): Update über v1.4, Kamera und Fotos (Augenkomfort aus und exakt zurück), Kachel, privates DNS bei WLAN aus/an, alle Seiten der App. 67 Unit-Tests.
SHA-256 der APK: ef2c6b5c6768bbf64e9bfc311dd847d260c45509493f01fc5a96eb7b988863ba
English
- Much smaller APK (about 1.5 MB instead of 8.5 MB): code and resources are now shrunk with R8, as requested in the F-Droid review.
- No functional changes. Names are not obfuscated; the build is still reproducible.
- No new permissions. Signed with the same certificate as v1.0–v1.4, so install it over the existing version.
PixelComfort v1.4 – Open Source, bereit für F-Droid
Quelloffen und bereit für F-Droid / IzzyOnDroid
- MIT-Lizenz – PixelComfort ist jetzt Open Source.
- Reproduzierbarer Build: ohne Googles verschlüsselten Abhängigkeits-Block. Aus dem Quellcode gebaut ergibt sich Byte für Byte dieselbe APK (bis auf die Signatur) – Voraussetzung für F-Droid und IzzyOnDroid.
- Beschreibungen, Icon und Screenshots für die App-Stores liegen im Repo (
fastlane/).
Verbesserungen
- Rechte erteilen unter „Erweitert“ meldet Fehler jetzt zuverlässig. Bisher konnte ein gescheitertes Erteilen von
WRITE_SECURE_SETTINGSals Erfolg angezeigt werden. - Robuster: Ein Fehler bei einer Einstellung im Hintergrund beendet die App nicht mehr – die Bedienungshilfe läuft weiter.
- README: Haftungshinweis, Lizenz und der Hinweis, die App nicht im Heim-WLAN zu deinstallieren (privates DNS bliebe sonst aus).
Beim Update beachten
- Keine neuen Berechtigungen.
- Signiert mit demselben Zertifikat wie v1.0–v1.3 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
- Kurz prüfen, ob die Bedienungshilfe danach aktiv ist (Startseite: „Alles eingerichtet“).
Getestet
Auf dem Pixel 10 Pro (Android 17): Update über v1.3, Kamera und Fotos (Augenkomfort aus und exakt zurück), Kachel – auch bei offener Kamera –, privates DNS bei WLAN aus/an, Rechte erteilen unter „Erweitert“. 67 Unit-Tests.
SHA-256 der APK: a06cce946e0d26ccf91664ad4499d3593bcf339239e5a56a3dfa9a9b7dc50ba0
English
- Open source under the MIT License, reproducible build (no encrypted dependency block) – prepared for F-Droid / IzzyOnDroid.
- Granting permissions under Advanced now reliably reports failures.
- More robust: an error in the background no longer stops the app.
- No new permissions. Signed with the same certificate as v1.0–v1.3, so install it over the existing version.
PixelComfort v1.3 – Privates DNS je nach WLAN
Neu: Privates DNS je nach WLAN
Hat dein Heimnetz einen eigenen DNS-Filter (z. B. AdGuard Home oder Pi-hole), umgeht ein am Handy eingetragenes privates DNS ihn zu Hause. PixelComfort schaltet das jetzt automatisch:
- Im Heim-WLAN wird privates DNS ausgeschaltet – das DNS deines Heimnetzes greift.
- Überall sonst (mobile Daten, fremdes WLAN) wird es mit deinem DNS-Namen eingetragen.
Einrichten unter Mehr → Privates DNS: Standort-Berechtigung erlauben, zu Hause Aktuelles WLAN hinzufügen, DNS-Namen prüfen, Automatik einschalten.
Stromsparend und sicher
- Kein Abfragen, kein Timer – Android meldet jeden Netzwechsel von selbst, die App reagiert nur (in wenigen Millisekunden).
- Zuhause zählt nur ein WLAN mit Passwort aus deiner Liste. Offene und OWE-Netze zählen nie, auch wenn sie gleich heißen.
- Im Zweifel bleibt privates DNS an: kein Netz, fremdes WLAN, WLAN-Name nicht lesbar.
- Nichts bleibt ausgeschaltet zurück: Schaltest du die Automatik oder die Bedienungshilfe ab, wird privates DNS sofort wieder eingetragen.
- Kein Shizuku zum Schalten nötig – die App schreibt die Einstellung direkt mit der schon erteilten Berechtigung
WRITE_SECURE_SETTINGS. - Den DNS-Namen in den Android-Einstellungen geändert? Die App übernimmt ihn beim nächsten Heimkommen.
- Wechsel stehen im Verlauf. Scheitert das Einschalten unterwegs, meldet eine Benachrichtigung das.
Beim Update beachten
- Neue Berechtigung Standort – nur nötig, wenn du die DNS-Automatik nutzt. Android gibt den WLAN-Namen nur damit heraus; der Standort selbst wird nie benutzt. Bei Nutzung der App reicht.
- Die Funktion gibt es ab Android 12.
- Signiert mit demselben Zertifikat wie v1.2 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
Getestet
Auf dem Pixel 10 Pro (Android 17): Einrichtung, WLAN aus/an im Hintergrund und bei gesperrtem Bildschirm, Standort aus (privates DNS bleibt an) und wieder an, Bedienungshilfe zu Hause abschalten, Automatik in der App aus/an, Verlauf, Kamera-Automatik unverändert. 66 Unit-Tests.
Nicht getestet: die Warnung bei einem Schreibfehler, die Übernahme eines von Hand geänderten DNS-Namens am Gerät (nur Unit-Test).
English
- New: private DNS by Wi‑Fi – off on your home Wi‑Fi (so e.g. AdGuard Home filters), on everywhere else. Set it up under More → Private DNS.
- Power-saving: no polling, Android reports network changes by itself.
- Safe: only a password-protected Wi‑Fi from your list counts as home; when in doubt, private DNS stays on; turning the automation or the accessibility service off enters private DNS again.
- No Shizuku needed for switching (uses
WRITE_SECURE_SETTINGS).
New permission: location (While using the app is enough) – only to read the Wi‑Fi name, the location itself is never used. Needs Android 12+. Signed with the same certificate as v1.2, so install it over the existing version.
PixelComfort v1.2 – Neue Oberfläche, Anzeige-Regler, Verlauf
Neu
- Neue Oberfläche im Stil der Pixel-Einstellungen – große Überschrift, Hauptschalter, Gruppen, eigene Seiten für Apps, Verlauf und Erweitert. Material You, hell und dunkel.
- Anzeige – Regler für Anzeigegröße (kleinste Breite in dp) und Schriftgröße, je mit Standard-Button.
- App-Auswahl – Apps aus einer Liste mit Symbolen und Suche wählen statt Paketnamen einzutippen.
- Verlauf – die letzten 100 Ereignisse: pausiert, wiederhergestellt, von Hand geschaltet, Fehler mit Grund.
- Shizuku-Warnung – eine Benachrichtigung meldet, wenn Shizuku nicht läuft, und verschwindet von selbst wieder.
- Englisch – die App folgt der Systemsprache (Englisch/Deutsch), ab Android 13 auch pro App wählbar.
- Neues App-Icon – flach, ohne Verlauf und Schatten.
Robustere Automatik
- Ist der Wert nicht lesbar (Shizuku läuft nicht), wird nicht pausiert. Bisher wurde „an" angenommen und später womöglich fälschlich eingeschaltet.
- War der Filter schon aus, wird nichts geschrieben.
- Scheitert das Wiederherstellen, bleibt der Wert gemerkt und der nächste App-Wechsel holt es nach.
- Shizuku-Aufrufe haben ein Zeitlimit und laufen ohne Shell.
- Der gemerkte Zustand wandert nicht mehr ins Backup.
Beim Update beachten
- Die App fragt einmal nach der Erlaubnis für Benachrichtigungen (für die Shizuku-Warnung).
- Die Test-Buttons „Comfort AN/AUS" gibt es nicht mehr, der Hauptschalter ersetzt sie.
- Signiert mit demselben Zertifikat wie v1.1 – über die bestehende Installation installieren, die Shizuku-Freigabe bleibt erhalten.
Getestet
Auf dem Pixel 10 Pro (Android 17): Automatik (an → aus → an, Ausgangslage „aus" bleibt aus), Hauptschalter, Kachel, App-Auswahl mit Suche, beide Regler, Verlauf, Warnung und Fehlerfälle bei gestopptem Shizuku, Deutsch und Englisch, hell und dunkel. 47 Unit-Tests.
Nicht getestet: echter Geräte-Neustart, Geräte ohne Google Sans oder vor Android 12, Querformat.
English
- New interface in the style of the Pixel settings, with Material You, light and dark
- Display: sliders for display size (smallest width in dp) and font size
- App picker with icons and search
- History of the last 100 events
- Shizuku warning notification when Shizuku isn’t running
- English and German, following the system language
- New flat app icon
- More robust automation: doesn’t pause when the value can’t be read, writes nothing when the filter is already off, retries a failed restore on the next app switch
The app asks once for the notification permission. Signed with the same certificate as v1.1, so install it over the existing version.
PixelComfort v1.1 – Schnelleinstellungs-Kachel
Neu: Schnelleinstellungs-Kachel
Die Kachel „Augenkomfort" schaltet den Comfort-Filter von Hand um und zeigt den
Live-Zustand (hell = an, dunkel = aus). Hinzufügen entweder in der App unter
3. Schnelleinstellungs-Kachel oder über das Stift-Symbol in den Schnelleinstellungen.
Sie greift auf denselben Settings-Key zu wie die Automatik und läuft über dieselbe
serielle Warteschlange – beide können sich also nicht überholen. Schaltest du während
Kamera oder Fotos vorn sind von Hand um, gilt deine Entscheidung auch nach dem Verlassen
der App: der gemerkte Wert wird mitgezogen, statt später still überschrieben zu werden.
Ohne laufendes Shizuku ist die Kachel nicht verfügbar – ohne Shizuku lässt sich
cv_enabled weder lesen noch schreiben, ein klickbarer Schalter wäre dann irreführend.
Unter der Haube
- Alle Zugriffe auf die Einstellung laufen jetzt über einen prozessweiten seriellen
Worker, den Automatik und Kachel teilen (vorher lag der Executor im
Bedienungshilfen-Dienst). - Toolchain aktualisiert: Gradle 9.7.1, AGP 9.3.1, Kotlin 2.4.10,
Compose BOM 2026.08.00, lifecycle 2.11.0. - Aufgeräumt: ungenutzte Template-Ressourcen entfernt, KTX-Formen genutzt,
Lint steht bei 0 Findings.
Getestet
Auf dem Pixel 10 Pro (Android 17): genau eine Umschaltung pro Kachel-Klick, das bloße
Öffnen des Panels schreibt nie. Automatik unverändert bestanden – Standardtest,
Baseline-AUS und Rebind-Test; cv_dynamic_enabled und cv_preferred_intensity bleiben
unangetastet.
Installation
APK unten laden. Setup-Schritte stehen im README.
Update über eine bestehende Installation behält die Shizuku-Freigabe (gleiche Signatur).
PixelComfort v1.0
Erste Version – auf einem Pixel 10 Pro (Android 17) end-to-end getestet.
Was die App macht
Schaltet den Augenkomfort-Modus (Comfort View) automatisch aus, sobald Google Kamera oder Google Fotos geöffnet werden, und stellt beim Verlassen exakt den vorherigen System-Zustand wieder her. Andere Comfort-Einstellungen (Dynamisch, Intensität) werden nicht angetastet.
Highlights
- 👁️ Live-Statusanzeige: Augenkomfort-Modus EIN/AUS direkt in der App
- 🔧 Umschalten über Shizuku (ADB-Rechte, kein Root) – der Settings-Key
system/cv_enabledist für Fremd-Apps gesperrt, ContentResolver-Fallback inklusive - 🎯 Ziel-Apps und Settings-Key frei konfigurierbar (falls der Key auf anderen Geräten abweicht)
- 🛡️ Erkennung von Advanced Protection Mode (deaktiviert Bedienungshilfen unter Android 17)
- 🐛 Fix enthalten: kein fälschliches Wiedereinschalten des Filters beim Neu-Binden des Dienstes; Shell-Aufrufe laufen auf einem Hintergrund-Thread
Installation (Kurzfassung)
- APK installieren, Shizuku starten
- In der App: Shizuku-Freigabe erteilen → Berechtigungen-Button → Bedienungshilfe PixelComfort Auto-Aus aktivieren
- Mit den Test-Buttons prüfen – Details im README
Hinweis: Shizuku muss nach jedem Geräte-Neustart laufen. Getestet nur auf Pixel 10 (Pro) mit Android 17.