在使用appium执行自动化脚本时,首次运行脚本时会在手机中安装unlock,setting,inputmanager三个apk,以达到让appium控制app的目的,但是运行完一次之后,在OPPO,vivo,以及其他一些手机上出现了这样的情况,每次运行都需要安装这三个apk,导致脚本执行过程非常不 ...
分类:
移动开发 时间:
2018-12-10 18:01:03
阅读次数:
265
Android系统源码阅读(12):InputChannel的注册过程
请对照AOSP版本:6.0.1_r50。
InputManager可以获得输入事件并分发,Activity需要处理这些输入...
分类:
移动开发 时间:
2016-09-28 16:33:31
阅读次数:
281
在事件生成并放入到命令队列后,Monkey类的runMonkeyCycles就会去调用相应事件源的getNextEvent来获的事件来执行事件注入,那么这一小节我们通过MonkeyKeyEvent这个事件的注入方法来看下事件注入过程是怎么样的。 往系统注入按键事件最终是通过调用InputManager提供的方法来实现的,在Android系统中,按键事件是由InputManager来收集并由Wind...
分类:
其他好文 时间:
2015-12-08 10:14:52
阅读次数:
165
上一篇Linux/Android——input系统之 kernel层 与 frameworks层交互 (五) 中有介绍kernel层一下以及与android这边frameworks层之间的联系,算是打通android 应用层与 kernel驱动层,对整个input系统的学习是至关重要的,其中frameworks层只是简单记录了几个接入点,这里开始分析frameworks层的细节部分。...
分类:
移动开发 时间:
2015-01-05 13:02:26
阅读次数:
277
现在有一个需求是说希望可以自动的隐藏和打开软键盘,场景是使用在alert dialog中有一个文本框,弹出dialog同时自动弹出键盘,编辑后点击完成直接关闭。使用的方式是:
inputManager.showSoftInput(tvEditor, InputMethodManager.SHOW_FORCED);
如果使用参数InputMethodManager.SHOW_IMPLICI...
分类:
移动开发 时间:
2014-12-23 15:33:16
阅读次数:
260
译者序:Google在Android 4.3发布时提供了一套新的UiAutomation框架来支持用户界面自动化测试,该框架通过运用已有的Accessibility APIs来模拟用户跟设备用户界面的交互:比如获取窗口界面控件和注入事件等。如在4.3之前UiAutomator工具是通过InputManager或者更早的WindowManager来注入KeyEvent等,4.3之后用的就是新框架Ui...
分类:
移动开发 时间:
2014-10-27 12:51:59
阅读次数:
262
在上一篇文章《Monkey源码分析之事件注入》中,我们看到了monkey在注入事件的时候用到了《Monkey源码分析番外篇之Android注入事件的三种方法比较》中的第一种方法,通过Internal
API的WindowManager的injectKeyEvent之类的方法注入事件。这种方法在android api level 16也就是android4.1.2之后已经发生了变化:
...
分类:
其他好文 时间:
2014-10-26 11:51:04
阅读次数:
228
方法一:
在android/jni/com_android_server_input_InputManagerService.cpp的276行,初始化InputManager对象的时候可以设置鼠标的速度,
mLocked.pointerSpeed = 0;//范围是-7到7,默认是0,-7最慢,7最快。
方法二:
在apk里面设置鼠标速度,调用InputManage...
分类:
移动开发 时间:
2014-10-15 16:01:09
阅读次数:
197
1、隐藏软键盘1 private void hideSoftInput(){2 // 隐藏软键盘3 InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_...
分类:
其他好文 时间:
2014-09-29 20:00:52
阅读次数:
159
1. Unity 的输入系统1.1 虚拟轴的输入检测Unity默认定义了15个虚拟轴。可以通过Edit -> Project Settings -> Input 打开 InputManager 来查看定义好的虚拟轴(1) 虚拟轴的属性Size之后的一些属性,例如:Horizontal,Vertica...
分类:
其他好文 时间:
2014-09-26 19:32:08
阅读次数:
279