问题标签 [accessibilityservice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2746 浏览

android - AccessibilityNodeInfo nodeInfo = event.getSource() 总是返回 null

我正在尝试使用 AccessibilityNodeInfo 但是当我使用 event.getSource() 它总是返回 null,我尝试阅读浏览器的编辑框,这是我的代码:

充当服务的accessibilityServicecode:

可访问性.xml:

0 投票
0 回答
687 浏览

android - Android Dialogbox Accessibility 是从上到下读取文本,忽略视图的contentDescription

我有一个带有自定义视图的警报对话框。我在 JAVA 中为自定义视图中存在的一些 TextView 设置 contentDescription。

其中一项内容是编号 239483。

我正在设置 contentDescription,将上面的数字转换为英文数字。

现在,第一次显示对话框时。它从上到下阅读。

上面的数字读作二十万等……

当我后来特别关注的时候,它读为二三九……它读了我的内容描述。

现在,当它决定从上到下阅读时,我如何定义它阅读 contentDescription。

这是我设置自定义对话框视图的代码:

我也试过这个:

但是,它没有影响。您能否定义我如何告诉对话框从上到下读取 contentDescription,而不是读取显示给用户的对话框文本。

0 投票
1 回答
448 浏览

android - 如果它是android无障碍服务的用户名字段,有什么方法可以检查来源?

我正在寻找一种方法来检查由可访问性服务实现的事件源,以查看它是否是用户名字段。我发现有一种方法可以检查该字段是否是如下密码:

好吧,我也想检测用户名字段,因为如果我使用 (!event.isPassword()) 它会检测例如 url 文本框甚至搜索框,这是我的条件:

0 投票
1 回答
902 浏览

android - 如何将自定义按钮添加到android自定义键盘?

我想为我的 android 开发一个自定义软键盘。我的问题是我想添加 2 个额外的按钮,它们可以执行任何我想要的操作。更准确地说,我想在我的键盘上粘贴用户名和密码按钮,所以每当我专注于编辑框并按下这些按钮时,相应的任务将是这样的:

或者

这是我的键盘示例 qwerty.xml 的一部分:

这是主要代码:

我想做这样的事情

0 投票
1 回答
142 浏览

android - AccessibilityService 随机工作?

我正在开发需要知道通知何时到达的应用程序。我正在使用可访问性服务来完成这项任务。

当我授予我的自定义可访问性服务权限(转到 Accessibility-> MyApp -> ON)时,会调用 onServiceConnected 并且在一段时间内一切正常。我的应用程序接收事件..

但过了一段时间(比如一个小时左右),我的应用程序停止收到有关新通知的通知。我必须禁用 AccesibilityService 并再次启用它才能工作。

当然这是不可接受的,因为用户不会每次都这样做..

下面是我的代码。

和清单。

出于测试目的,我使用的是在 KitKat Android OS 上运行的 HTC One M7。那么为什么我的应用在一段时间后停止接收通知?任何帮助将非常感激!

0 投票
1 回答
2065 浏览

android - 防止 onAccessibilityEvent(AccessibilityEvent event) 进入无限循环

我有一个AccessibilityEvent可以自动停止应用程序。但是当启动应用程序信息意图时,它会进入打开/关闭警报对话框的无限循环。

我该如何预防?这是代码:

force_stop_button顺便说一句,在应用信息意图开始后立即获得点击的任何想法?

编辑:我认为问题出在AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED. 如果我绕过该检查,它可以工作,但很难控制。

0 投票
2 回答
936 浏览

java - 仅在 KitKat (4.4) 中未收到 Android AccessibilityService 事件

我在 Android 中创建了 Accessibility 服务,它在 4.2(Jelly Bean)和 5.1(Lollipop)上完美运行,但在 4.4(KitKat)上却不行。

在 KitKat 上,它不接收任何事件并且根本不调用onAccessibilityEvent

难道我做错了什么?
这是我的实现:

无障碍服务.xml

myAccessibilityService.java

AndroidManifest.xml

当我进入设置并打开服务时,onServiceConnected会调用它并说它已打开并正在运行但它从未调用过onAccessibilityEvent

就像我说的,它适用于 JellyBean 和 Lollipop。那么可能是什么问题呢?

0 投票
1 回答
241 浏览

android - 如何从同一个应用程序 android 关闭我的无障碍服务应用程序?

我正在开发一个无障碍服务应用程序。我想要的只是通过单击同一应用程序的按钮将其关闭。我怎样才能做到这一点?

0 投票
3 回答
6094 浏览

android - Android 无法使用无障碍服务在少数设备上读取窗口内容

我的要求:从特定应用程序的弹出窗口、对话框等中读取文本。

我已经实施了无障碍服务,并且我正在根据我的要求接收适当的事件和数据。然而,在测试时,我意识到在某些设备上,他们没有使用 AlertDialog 或 Dialog,而是使用了一个活动(主题为对话框)。因此,在我的可访问性事件中,我只收到活动标题,有没有办法可以找到这个特定弹出活动显示的文本?

我已经进行了相当艰苦的搜索,但在该主题上没有得到太多帮助,文档也没有在这个问题上有任何好处。无障碍服务的代码不多,但如果您仍然需要,我会稍后发布。

谢谢

0 投票
1 回答
3531 浏览

android - 每次调试运行时禁用辅助功能服务

每次我启动一个新的调试实例时,我的无障碍服务都会重置为禁用状态。

有什么方法可以在连续的调试运行中保持启用(因为每次启用它以调试服务很长很无聊)?

我在真实设备和模拟器上有相同的行为。
服务中没有异常,我在事件处理程序中尝试了没有代码的事件。

我的日志中有可疑行:

所以服务被强制停止并且永远不会重新启动。

笔记:

  • 如果我重新启动手机,服务就会启动。
  • 我对ApiDemos 示例和 ClockBackService(也有 QueryBackService)有相同的行为:

    /li>

我试图通过覆盖 onStartCommand 来返回 START_STICKY 而不做任何更改。

它非常接近这个未回答的老问题如何调试无障碍服务?,但在我的情况下,该服务似乎已禁用,我不需要停止它并重新启动它。

我在 AOSP 上填写了这个错误报告