首页 > 解决方案 > 使用辅助功能服务从屏幕上读取所有文本

问题描述

我正在尝试阅读屏幕上显示的所有文本,但是,我正在执行任务,我正在附上我正在尝试阅读的屏幕截图、我用来阅读它的代码和输出我越来越。输出中缺少除最后一条以外的所有消息。

执行:

    ...
    AccessibilityNodeInfo mNodeInfo = accessibilityEvent.getSource();
    printeverything(mNodeInfo, 0);
    ...
     
    public void printeverything(AccessibilityNodeInfo node, int depth) {
            if (node == null) return;
            String print = "";
            for (int i = 0; i < depth; i++) print += "\t";
            print += "name:" + node.getViewIdResourceName();
            print += " ";
            print += "text:" + node.getText();
            Log.i("TESTREQ", print);
            for (int j = 0; j < node.getChildCount(); j++) {
                printeverything(node.getChild(j), depth + 1);
            }
        }

输出:

I/TESTREQ: name:null text:null
        name:null text:A Reyna
        name:null text:You: Test 2
        name:null text:Not sent, tap to try again.
I/TESTREQ: name:null text:null
I/TESTREQ:  name:null text:null
            name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 1 line
I/TESTREQ:      name:null text:null
                name:null text:null
                    name:null text:null
                        name:null text:null
                            name:null text:Conversation with A Reyna
                        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:                  name:null text:null
                            name:null text:null
                                name:null text:null
                                name:null text:Attach recent photo
I/TESTREQ:          name:null text:null
                name:null text:null
                name:null text:Text message
                name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:          name:null text:null
            name:null text:null
            name:null text:null
                name:null text:A Reyna
            name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:      name:null text:null
I/TESTREQ: name:null text:null
        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 1 line
I/TESTREQ:  name:null text:null
            name:null text:null
                name:null text:null
                    name:null text:null
                        name:null text:Conversation with A Reyna
                    name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:              name:null text:null
                        name:null text:null
                            name:null text:null
I/TESTREQ:                      name:null text:Attach recent photo
            name:null text:null
            name:null text:null
            name:null text:Text message
            name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:      name:null text:null
        name:null text:null
        name:null text:null
            name:null text:A Reyna
        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:  name:null text:null
I/TESTREQ: name:null text:Text message
I/TESTREQ: name:null text:null
        name:null text:null
            name:null text:Conversation with A Reyna
        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:  name:null text:null
            name:null text:null
I/TESTREQ:          name:null text:null
                name:null text:Attach recent photo
I/TESTREQ: name:null text:null
I/TESTREQ:  name:null text:null
            name:null text:Conversation with A Reyna
I/TESTREQ:  name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:  name:null text:null
            name:null text:null
                name:null text:null
                name:null text:Attach recent photo
I/TESTREQ: name:null text:null
I/TESTREQ:  name:null text:null
            name:null text:Conversation with A Reyna
        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:  name:null text:null
            name:null text:null
                name:null text:null
                name:null text:Attach recent photo
I/TESTREQ: name:null text:null
        name:null text:null
            name:null text:Conversation with A Reyna
        name:null text:null
I/chatty: uid=10253(com.example.myapplication) identical 2 lines
I/TESTREQ:  name:null text:null
            name:null text:null
                name:null text:null
                name:null text:Attach recent photo

我正在尝试阅读的屏幕。

在此处输入图像描述

标签: androidaccessibilityservice

解决方案


推荐阅读