Skip to content

fix: add prominent disclosure before accessibility settings redirect - #215

Merged
ErikBjare merged 1 commit into
masterfrom
fix/accessibility-prominent-disclosure
Aug 10, 2026
Merged

fix: add prominent disclosure before accessibility settings redirect#215
ErikBjare merged 1 commit into
masterfrom
fix/accessibility-prominent-disclosure

Conversation

@ErikBjare

Copy link
Copy Markdown
Member

Part of Play Store policy compliance: Accessibility API Policy: Missing prominent disclosure — the standing rejection from Oct 2023.

Problem

The onboarding "grant accessibility" button jumped straight to ACTION_ACCESSIBILITY_SETTINGS. Google's Accessibility API policy requires an in-app prominent disclosure that the user affirmatively accepts before being directed to enable the service, stating what data is accessed and how it's used.

Fix

An AlertDialog on the button now states: what is collected (browser URL + page title via the Accessibility API), why (web browsing tracking), that data is stored only on-device and never sent to developers/third parties, and that the feature is optional. "Agree" proceeds to the settings screen; "No thanks" dismisses.

Remaining manual step (Play Console)

Code alone doesn't clear this flag — the AccessibilityService declaration form in Play Console (App content → Sensitive app permissions / Accessibility) must also be filled in, declaring the service is not primarily for accessibility and describing the core functionality. Worth doing in the same pass as the resubmission.

Sibling PRs: #213 (16 KB pages), #214 (target API 36).

@ErikBjare

Copy link
Copy Markdown
Member Author

@greptileai review

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@greptile-apps

greptile-apps Bot commented Aug 6, 2026

Copy link
Copy Markdown

Greptile Summary

Adds a prominent accessibility-data disclosure that users must affirmatively accept before Android accessibility settings open.

  • Replaces the direct accessibility-settings redirect with an AppCompat confirmation dialog.
  • Explains the browser data collected, its purpose, storage, optional nature, and provides “Agree” and “No thanks” actions.

Confidence Score: 5/5

The PR appears safe to merge with no concrete blocking or non-blocking defects identified.

The dialog uses the project’s existing AppCompat dependency and compatible activity theme, preserves the optional permission flow, and opens accessibility settings only after affirmative consent.

Important Files Changed

Filename Overview
mobile/src/main/java/net/activitywatch/android/OnboardingActivity.kt Correctly gates the existing accessibility-settings intent behind an AppCompat disclosure dialog and affirmative user action.
mobile/src/main/res/values/strings.xml Adds the disclosure title, explanatory text, and explicit accept/decline labels required by the new dialog.

Sequence Diagram

sequenceDiagram
    actor User
    participant Onboarding as PermissionsFragment
    participant Dialog as Accessibility disclosure
    participant Settings as Android Accessibility Settings
    User->>Onboarding: Tap grant accessibility
    Onboarding->>Dialog: Show prominent disclosure
    alt User agrees
        User->>Dialog: Tap Agree
        Dialog->>Settings: Open accessibility settings
    else User declines
        User->>Dialog: Tap No thanks
        Dialog-->>Onboarding: Dismiss
    end
Loading

Reviews (1): Last reviewed commit: "fix: add prominent disclosure before acc..." | Re-trigger Greptile

Google Play's Accessibility API policy requires an in-app prominent
disclosure, affirmatively accepted, before directing users to enable an
accessibility service (standing Play rejection since Oct 2023). Shows
what is collected (browser URL + page title), why (web browsing
tracking), and that data stays on-device.
@ErikBjare
ErikBjare force-pushed the fix/accessibility-prominent-disclosure branch from 238284b to 43a21da Compare August 10, 2026 08:51
@ErikBjare
ErikBjare merged commit 63d8716 into master Aug 10, 2026
8 checks passed
@ErikBjare
ErikBjare deleted the fix/accessibility-prominent-disclosure branch August 10, 2026 09:06
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.

1 participant