Skip to content

feat: usage access permission screen - #17

Merged
mikahatdichlieb merged 2 commits into
mainfrom
feat/usage-access-screen
Oct 26, 2026
Merged

mikahatdichlieb merged 2 commits into
mainfrom
feat/usage-access-screen

Conversation

@mikahatdichlieb

Copy link
Copy Markdown
Contributor

Closes #14

What

  • After pairing, while usage access is missing, the app shows "Allow usage access" instead of the connected screen. It shows it again if the access is revoked later.
  • The screen first explains what the access is for, then lists:
    • What goes to the server: the package name of each app used (e.g. org.mozilla.firefox), when it was opened and for how long.
    • What is never collected: activity inside apps (messages, websites, photos, location) and anything from before pairing.
  • "Open settings" opens Settings.ACTION_USAGE_ACCESS_SETTINGS on this app's entry where supported. It falls back to the plain usage access list, then to the general settings on devices without that screen.
  • The app re-checks the permission on every resume. Once access is granted it collects and syncs right away and shows the connected screen.

Privacy relevant

The screen makes concrete promises about what is and is not sent. They match what the code does today. Any later change to the event contents (for example adding label) has to update these texts too.

Tests

No new unit tests: opening the settings and re-checking on resume depend on Android and still need a run on a device. All existing checks pass. There are no new dependencies.

Lists what goes to the server (package names, open times and durations)
and what is never collected, then opens the usage access settings, on
this app's entry where supported, with fallbacks for devices without
that screen.
The app checks the permission on every resume. Once it is granted, it
collects and syncs right away.
@mikahatdichlieb
mikahatdichlieb merged commit b030536 into main Oct 26, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Usage access permission screen

1 participant