问题标签 [android-accessibility]
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.
android - Android O - 指纹手势回调不起作用
我正在使用可访问性打开指纹手势在 Pixel 设备上进行测试。我正在尝试使用 FingerprintGestureController 获取手势回调,但即使在我从 Settings->Accessibility 打开此应用程序的可访问性后,也从未获得任何手势作为回报。isGestureDetectionAvailable() 总是向我返回 false。有人可以帮忙吗。
这是代码:
my_gesture_service.xml
AndroidManifest.xml
我的服务.java
android - 在 AccessibilityService 中遍历 AccessibilityNodeInfos
我目前使用 . 检索活动窗口的根节点getRootInActiveWindow()
。之后,我执行广度优先搜索以获取所有节点的列表。
我的问题:如何遍历此节点列表以获得焦点顺序?该列表是否已根据节点的焦点顺序排序?是否有不同的方法来检索焦点顺序?
提前致谢。
android - 如何将内容描述设置为 RecylerView 项目
我正在更改我的 ListView 以使用 aRecylerView
并且我想为每个项目添加内容描述。我需要补充一点,listItem 具有按钮的作用,所以它会显示为“head”+“desc”+“button”。我想我知道如何做那部分,但经过几次尝试后无法弄清楚到底该把它放在哪里。我已经阅读了一些关于此的问题,但对于我将其放在哪里有点困惑。任何帮助,将不胜感激。
java - 当用户关闭所需的应用程序时,辅助功能服务会删除图标
我使用辅助功能服务在 Google 相册应用上绘制图标,并使用以下代码进行操作:
但是当用户关闭应用程序或隐藏它时,图标会离开。我没有找到任何可以处理这种情况的事件。任何人都可以帮我解决这个问题。我只想为某些应用程序绘制图标,并在用户关闭此应用程序后将其删除。
更新
我使用了 AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED 事件并按事件获取包名称,但是在绘制图标时从 Android N 开始,AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED 发生在我自己的包名称和图标被删除的情况下。
android - 对讲不发音按钮名称
在我的应用程序中,Talkback 不会发音按钮的名称。相反,它只是发音为 "button"。
谁能帮我完成任务?
我尝试了以下xml
那行不通
android - 我如何使用 AccessibilityService 在用户的整个设备上监听手势?
我将如何使用 Android 中的 AccessibilityService 在用户整个设备上监听手势?我目前的想法是使用 GestureResultCallback() 方法,但我不知道如何在我的服务中注册该方法。
android - 我可以为仅由 TalkBack 宣布的 TextView 提供额外的标签,而不是直观地显示吗?
假设我有一个项目列表,每个项目中的一个视图是一条消息,在一个简单的 TextView 中,它在代码中填充(来自后端服务的动态数据)。
视觉上它不需要标签;列表项布局非常清晰。但是听听 TalkBack 是如何读取屏幕的,我认为为它加上一个“标签”或描述会很有好处。这样 TalkBack 会显示如下内容:
消息:[实际动态消息内容]
我的问题是:是否可以为 TextView 添加标签/描述,首先,它不会替换TextView 内容,而是与它一起阅读,其次,只会影响 TalkBack(而不是视觉呈现)?
我尝试了什么:
contentDescription
对于文本视图。不起作用:如果设置,则不公布实际内容,仅公布contentDescription
. 嗯,也许如果我在代码中设置这个,并在实际内容前面加上描述......但是没有更简单的方法吗?- 将 TextView 与
labelFor
指向分开@+id/message
。问题是它也显示在视觉上并且搞砸了设计。如果我以某种方式使其不可见,则 TalkBack 似乎也不会读取它。
android - 是否可以将焦点放在editText中添加的drawable以用于android中的可访问性?
我想要 EditText 和清除按钮(在 EditText 的右侧)来清除 EditText 中的文本,并且还希望在这两个元素上实现可访问性。我可以通过以下方式进行操作:
- 通过在 EditText 中将清除按钮添加为可绘制的权利。
- 通过将清除按钮添加为布局中 EditText 右侧的单独按钮。
如果第一种方式无法实现,我将第二种方式作为可选方式。我想知道是否有可能拥有 EditText 和可绘制的权利(清除按钮)并让 EditText 和可绘制都可访问(即,当可访问性打开时)想要首先关注 EditText,然后在滑动或导航焦点时应该转到可绘制的清除按钮)。
谢谢。
android - 出于调试目的授予辅助功能服务权限
我的应用程序使用可访问性权限,每次运行时我都需要手动授予权限,这很乏味,是否有一个选项可以通过某些命令授予我的应用程序此权限,仅用于调试目的?谢谢你。
android - 使用 AccessibilityService 从 (Facebook) RecyclerView 读取文本
如何查看非焦点 RecyclerView 子项(项)的文本?
我的无障碍服务应该从屏幕上读出包含关键字的文本。这在大多数情况下都很有效,除了我处理 RecyclerViews 的地方,尤其是 Facebook 应用程序中的那些。
Facebook 提要和评论屏幕都基于 RecyclerView,似乎都无法让我从他们的可访问性事件中访问我需要的文本。
我试过的:
似乎无处包含我需要的数据。例如,从帖子中打开评论屏幕/叠加层时,我可以看到除评论本身之外的所有文本内容(在回收站视图中)
我可以看到的事件详细信息的日志:
这是我在一条评论的帖子上看到的评论叠加
我也尝试过探索源的孩子,但只有 ViewGroups 被呈现(没有 Views)并且总是带有文本 null
我不确定这是否绝对可行,或者我可能采取了完全错误的方法。我注意到在 TalkBack 模式下,用户必须在阅读之前单击/聚焦 RecyclerView 子项的各个元素,这不是我的服务的选项(应该找到那些感兴趣的项目)