10
某些设备具有额外的安全功能,并在显示权限对话框时检查应用程序是否在其他设备上绘图。检测到屏幕覆盖 - 如何在屏幕覆盖应用程序中处理此问题
我有一个侧边栏应用程序,我的应用程序必须禁用,用户才能接受系统对话框。
问题
- 我应该怎么来处理这种情况?
- 有没有办法监听“系统对话框显示”事件,以便我可以删除我的侧栏和“系统对话框已完成”,以便我知道,我可以继续使用我的侧栏覆盖?我知道,这足以停止服务(您不必删除的权限),那么这将是一个解决方案,以及
编辑
一个解决方案,我能想到的如下:
使用AccessibilityService
来检查当前的前景应用程序/视图。在那里,我将能够检查事件告诉我当前的前景活动,甚至意见...
我的问题:
- 我不知道如何识别权限对话框出现。其次,这迫使我要求用户获得这个权限(我想避免这种权限,但有了这个服务的解决方案,对我来说已经是一种改进,因为有些用户已经给我的应用授予了这个权限 - 我将不得不问,然后解释原因,这是我可以生活的东西)。
我查一下...我的应用程序暂停本身有时已经链接,当一些用户选择黑名单应用程序在前台,所以我通过'ActivityManager'(或更新的'AccessibilityService')监视这个事情......我想可能有一个解决方案,使用AccessibilityService'至少... – prom85
@ prom85是的,它也可以使用[AccessibilityService#getWindows()](https://developer.android.com/reference/android/accessi bilityservice/AccessibilityService。html#getWindows()),它根据文档返回显示的所有窗口。 – Manu
我已经有通知中的暂停/继续按钮...并且获取当前的前景应用程序/视图没有问题,但我仍然不知道如何识别系统窗口...我添加了一些额外的信息我的问题涉及到'AccessibilityService'解决方案... – prom85