直播平台软件开发,Android代码模拟触摸、点击及滑动等事件

直播平台软件开发,Android代码模拟触摸、点击及滑动等事件

一、应用中模拟物理和屏幕点击事件

 

例如,模拟对某个view的点击事件

 

1
<br>private void simulateClick(View view, float x, float y) {<br>    long downTime = SystemClock.uptimeMillis();<br>    final MotionEvent downEvent = MotionEvent.obtain(downTime, downTime,MotionEvent.ACTION_DOWN, x, y, 0);<br>    downTime += 1000;<br>    final MotionEvent upEvent = MotionEvent.obtain(downTime, downTime,MotionEvent.ACTION_UP, x, y, 0);<br>    view.onTouchEvent(downEvent);<br>    view.onTouchEvent(upEvent);<br>    downEvent.recycle();<br>    upEvent.recycle();<br>}<br> <br>public void setMouseClick(int x, int y){  <br>    MotionEvent evenDownt = MotionEvent.obtain(System.currentTimeMillis(),  <br>            System.currentTimeMillis() + 100, MotionEvent.ACTION_DOWN, x, y, 0);  <br>    dispatchTouchEvent(evenDownt);  <br>    MotionEvent eventUp = MotionEvent.obtain(System.currentTimeMillis(),  <br>            System.currentTimeMillis() + 100, MotionEvent.ACTION_UP, x, y, 0);  <br>    dispatchTouchEvent(eventUp);  <br>    evenDownt.recycle();  <br>    eventUp.recycle();  <br>}  <br> 

这实现原理就是模拟两个MotionEvent (按下和提起) 然后用一个View 来处理这个Event 。

 

二、Instrumentation实现模拟键盘鼠标事件

 

1
<br> <br>// 可以不用在 Activity 中增加任何处理,各 Activity 都可以响应  <br>Instrumentation inst = new Instrumentation();  <br>inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(),   <br>    MotionEvent.ACTION_DOWN, 200, 500, 0));  <br>inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(),   <br>    MotionEvent.ACTION_UP, 200, 500, 0)); 

 

 以上就是 直播平台软件开发,Android代码模拟触摸、点击及滑动等事件,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(71)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2022-04-12 成品直播源码,顶部导航栏部分支持左右滑动
2022-04-12 短视频商城系统,自动更改每次下拉后的刷新动画
2022-04-12 直播软件搭建,关于个人主页背景色的更改
点击右上角即可分享
微信分享提示