Google started contacting developers last month with a bit of an ultimatum: make sure accessibility mode is only used to help disabled users or risk being banned from the Play Store. Android's accessibility services have been used for a great many things over the years, so this change in policy caught many developers off guard. However, Google is now notifying developers that it's pausing the ban as it looks into how apps can make "responsible and innovative" use of accessibility features.
Here's the full text of the email going out to affected devs.
Thanks for contacting the Google Play team.
We’re evaluating responsible and innovative uses of accessibility services. While we complete this evaluation, we are pausing the 30 day notice we previously contacted you about.
We’ll notify you once our evaluation is completed.If further actions are needed to bring your app into compliance with our policies, your 30 day notice period will begin when we reach back out to you.
In the meantime, we’ve included clarifying guidance below which may be helpful:
- If you don’t need the BIND_ACCESSIBILITY_SERVICE permission in your app:
- Remove your declaration of this permission from your app’s manifest.
- Sign in to your Play Console and upload your modified, policy-compliant APK.
No further action is required after publishing the app.
- If you need the BIND_ACCESSIBILITY_SERVICE permission in your app to exclusively help users with accessibility needs use Android devices and apps, or for another approved accessibility related purpose (e.g. Accessibility testing tools) that benefits users, you must set the android:description element to the following sentence to provide a user-facing disclosure of the Accessibility Service API:
- “All usage of accessibility service privileges is exclusively for the purpose of providing accessibility features to users.”
If your accessibility app uses accessibility privileges for both accessibility and non-accessibility purposes, you must instead fulfill the below criteria.
- If you use the BIND_ACCESSIBILITY_SERVICE permission in your app for any purpose not relating to, or in addition to, helping users with accessibility needs use Android devices and apps, you must update the android:description element in your accessibility service definition to provide user-facing disclosure of the Accessibility Service API: before asking the user to enable this permission within your app. Your disclosure must meet the following requirements:
- In all cases, you must have a disclosure to explain why you need to observe user actions in general using the Accessibility Service API.
- For each accessibility capability declared, you must have an accompanying disclosure to describe the app functionality that the Accessibility Service permission is enabling for your app. (The default disclosure tells us “what”, but you must disclose to the user “why”).
If you believe your app uses the Accessibility API for a responsible, innovative purpose that isn’t related to accessibility, please respond to this email and tell us more about how your app benefits users. This kind of feedback may be helpful to us as we complete our evaluation of accessibility services.
It sounds like Google is realizing its decision to limit accessibility features would have a lot of unintended consequences. Apps like Tasker need accessibility to automate actions, while other apps might need it to input text or expand your notification shade. Granting an app accessibility controls can also be a security risk, which is why Google decided to crack down in the first place.
With the 30-day grace period paused, developers will be able to make a case for their apps. Those who need accessibility for non-disability reasons need to add the necessary documentation and reach out to Google to explain the situation. We'll have to wait and see how this pans out.
- Cliff Wade,
- and Ishaan Garg