2 caihanyuan caihanyuan 于 2016.03.08 15:42 提问

Android "Show Touches" 打开后, 没有显示效果 10C

我用Instrumentation.sendPointerSync(MotionEvent e) 来模拟触摸事件,希望屏幕上能显示
出小圆点。 在开发者选项中将“显示触摸”打开了,如果是用手指触摸屏幕能显示出小圆点。
但是用Instrumentation模拟的触摸没有显示小圆点。

有人能帮忙看下吗?

2个回答

devmiao
devmiao   Ds   Rxr 2016.03.08 15:49
caihanyuan
caihanyuan Settings.System.SHOW_TOUCHES已经打开了,用Instrumentation模拟事件的时候,小圆圈没有显示出来。手指触摸是可以的。
接近 2 年之前 回复
VqwertyV
VqwertyV   2016.03.09 17:50

可能开发者选项中的那个显示触摸调用的是更底层的方法,你这个模拟的方法执行的时候并没有调用到那个回调。
即:

手指触摸屏幕--->系统检测触摸(此步执行了系统的显示触摸点)--->产生触摸事件---->传递触摸事件
而你的模拟方法可能是从产生触摸事件开始的
只是猜测,可能实际情况要更复杂些

VqwertyV
VqwertyV 回复小源求学: 哎 我也试了下 确实不行 或许系统的方法还在更底层。如果只是在app中要检测的话可以自己重写onTouchEvent检测,
接近 2 年之前 回复
caihanyuan
caihanyuan 我看了frameswork的源码,的确是这样的。 所以我现在改成向 设备文件 dev/input/event*写入事件,来模拟触摸事件。 但是有个问题,我用adb shell sendevent都没有反应。你能帮帮我
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!