Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 'Accessibility Service' Mode #17

Open
nbetcher opened this issue Jun 5, 2023 · 2 comments
Open

Add 'Accessibility Service' Mode #17

nbetcher opened this issue Jun 5, 2023 · 2 comments

Comments

@nbetcher
Copy link

nbetcher commented Jun 5, 2023

(While you're very likely already aware of this option, I think it's good to throw out there in case it sparks any further ideas...)

Ideally the app should have a mode where you can enable it as an Accessibility Service. This would solve these issues on Github.

While it is true, that yes, Google will squawk at Yet Another Accessibility Service-consuming app, and definitely reject it from publishing to the Play Store without some white lies, it is certainly possible. As a developer/power user myself, I definitely need this functionality as much of the inspection I do revolves around the System UI / Quick Access / Notification panels.

Separate Whole Play Store / Github App: One idea is to "simply" isolate the Accessibility Service module and relevant associated linked code (for the UI / backend) from the Play Store version's code, then publish the Accessibility Service-enabled version here, on Github.

Plugin App: Another would be to allow the main application to be "extended" via a plugin application APK (again, available from here, on Github). Exactly like what PCAPDroid does with its PCAPDroid MITM extension. Note: Providing in-app links/advice to users on bypassing Google's policies (such as installing an external APK that uses android.permission.BIND_ACCESSIBILITY_SERVICE) can result in warnings/bans.

White Lie (tm): The final option would be to request a Play Store justification for needing android.permission.BIND_ACCESSIBILITY_SERVICE by saying something along the lines of:

Developer Assistant allows people with disabilities to inspect the user interface for further details that will aid them in disseminating the information on the screen when it is otherwise unclear to them.

None of them are ideal, but -- in my own opinion -- they are more ideal than being plagued with bug reports for the rest of the app's existence. :-)

P.S. The trigger to start discovery could be using the volume buttons, like Tasker does.
P.P.S. Bonus feature: If package is granted android.permission.WRITE_SECURE_SETTINGS, you can toggle the Accessibility Service on/off dynamically based on need in order to cut down on CPU usage when the app isn't in use and honor user's possible privacy concerns.

@Intellectual777
Copy link

(While you're very likely already aware of this option, I think it's good to throw out there in case it sparks any further ideas...)

Ideally the app should have a mode where you can enable it as an Accessibility Service. This would solve these issues on Github.

While it is true, that yes, Google will squawk at Yet Another Accessibility Service-consuming app, and definitely reject it from publishing to the Play Store without some white lies, it is certainly possible. As a developer/power user myself, I definitely need this functionality as much of the inspection I do revolves around the System UI / Quick Access / Notification panels.

Separate Whole Play Store / Github App: One idea is to "simply" isolate the Accessibility Service module and relevant associated linked code (for the UI / backend) from the Play Store version's code, then publish the Accessibility Service-enabled version here, on Github.

Plugin App: Another would be to allow the main application to be "extended" via a plugin application APK (again, available from here, on Github). Exactly like what PCAPDroid does with its PCAPDroid MITM extension. Note: Providing in-app links/advice to users on bypassing Google's policies (such as installing an external APK that uses android.permission.BIND_ACCESSIBILITY_SERVICE) can result in warnings/bans.

White Lie (tm): The final option would be to request a Play Store justification for needing android.permission.BIND_ACCESSIBILITY_SERVICE by saying something along the lines of:

Developer Assistant allows people with disabilities to inspect the user interface for further details that will aid them in disseminating the information on the screen when it is otherwise unclear to them.

None of them are ideal, but -- in my own opinion -- they are more ideal than being plagued with bug reports for the rest of the app's existence. :-)

P.S. The trigger to start discovery could be using the volume buttons, like Tasker does. P.P.S. Bonus feature: If package is granted android.permission.WRITE_SECURE_SETTINGS, you can toggle the Accessibility Service on/off dynamically based on need in order to cut down on CPU usage when the app isn't in use and honor user's possible privacy concerns.

@Intellectual777
Copy link

/#17 (comment) #15

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

No branches or pull requests

2 participants