如何从Android应用程序生成类似事件的Ctrl + v(Paste)?

时间:2018-10-04 07:31:09

标签: android adb

我正在尝试在android中生成Paste事件。我已经在android中阅读了有关“ Keyevents”的信息,但到目前为止,我还没有找到任何生成粘贴事件的键。 This stackoverflow问题也无济于事。

即使接受的答案也不是很清楚。有什么办法可以做到这一点,例如使用任何第三方库等。请帮助

1 个答案:

答案 0 :(得分:1)

因此,经过大量研究,终于找到了粘贴复制的文本的一种方法,即使用Accessibility Service

我从this stackoverflow线程中搜索一个异常时得到了解决方案。

我还是要在这里粘贴代码,如果您已经复制了文本,并且可访问性服务已设置好,那么您可以使用以下代码:

  @Override
    public void onAccessibilityEvent(AccessibilityEvent event) {

        AccessibilityNodeInfo source = event.getSource();
        if (source != null && ( event.getEventType() == AccessibilityEvent.TYPE_VIEW_FOCUSED ) ) {

                try{
                        Thread.sleep(2000);
                    }catch (Exception e){

                    }
            source.performAction(AccessibilityNodeInfo.ACTION_PASTE); 

        }
    }   

我添加了 Thread.sleep(2000),以便有时间加载UI,然后稍后粘贴文本。