You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android平台下Accessibility Service能否获取屏幕文本?

Android Accessibility Service能否获取屏幕文本?

是的,Android的Accessibility Service可以获取屏幕上的文本内容,但需满足以下前提与限制:

  • 必须在系统设置中手动启用该辅助服务,由用户授予对应权限
  • 仅能获取系统通过AccessibilityEvent暴露的文本,比如控件的text属性、内容描述等
  • 需要在服务配置里声明目标事件类型(如TYPE_VIEW_SCROLLED、TYPE_WINDOW_CONTENT_CHANGED)及相关权限,才能接收事件并提取文本

以下是基础实现示例:

@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
    if (event.getEventType() == AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED) {
        AccessibilityNodeInfo rootNode = getRootInActiveWindow();
        if (rootNode != null) {
            extractTextFromNode(rootNode);
            rootNode.recycle();
        }
    }
}

private void extractTextFromNode(AccessibilityNodeInfo node) {
    if (node == null) return;
    if (node.getText() != null) {
        String text = node.getText().toString();
        // 处理获取到的文本内容
    }
    for (int i = 0; i < node.getChildCount(); i++) {
        extractTextFromNode(node.getChild(i));
    }
}

注意:这类辅助服务的使用必须遵守Android隐私规范,严禁用于窃取用户隐私,否则会违反应用商店审核规则。

内容的提问来源于stack exchange,提问作者Lập Trình

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 13:57:11