舌尖上的中国2三餐,飞鸽传书v2.06,赤城一中吧
通过socket + instrumentation实现模拟键盘鼠标事件主要通过以下三个部分组成:
socket编程:实现pc和emulator通讯,并进行循环监听
service服务:将socket的监听程序放在service中,从而达到后台运行的目的。这里要说明的是启动服务有两种方式,bindservice和startservice,两者的区别是,前者会使启动的service随着启动service的activity的消亡而消亡,而startservice则不会这样,除非显式调用stopservice,否则一直会在后台运行因为service需要通过一个activity来进行启动,所以采用startservice更适合当前的情形
instrumentation发送键盘鼠标事件:instrumentation提供了丰富的以send开头的函数接口来实现模拟键盘鼠标,如下所述:
sendcharactersync(int keycode) //用于发送指定keycode的按键
sendkeydownupsync(int key) //用于发送指定keycode的按键
sendpointersync(motionevent event) //用于模拟touch
sendstringsync(string text) //用于发送字符串
注意:以上函数必须通过message的形式抛到message队列中。如果直接进行调用加会导致程序崩溃。
对于socket编程和service网上有很多成功的范例,此文不再累述,下面着重介绍一下发送键盘鼠标模拟事件的代码:
发送键盘keycode:
步骤1. 声明类handler变量
private static handler handler;
步骤2. 循环处理message
java代码:
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio开发小型对话机器人app(实例代码)
Android通过Java sdk的方式接入OpenCv的方法
Android 通过cmake的方式接入opencv的方法步骤
Android Studio finish()方法的使用与解决app点击“返回”(直接退出)
Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)
网友评论