如何使用 public boolean onTouchEvent(MotionEvent event)
像您从 Activity 那样获取触摸事件?服务中显然没有可覆盖的 onTouchEvent
方法,那么我该怎么做呢?是否有直接的方法或可靠的解决方法?
我的想法是创建一个服务,在后台监听用户做出特定手势,然后在用户做出正确手势时执行某些操作。谢谢!
编辑:这个问题旨在回答这个 question .
最佳答案
您可以创建一个 0x0 View 并将其添加到服务的窗口中,作为始终位于顶部的系统对话。
您可以使用 'WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH'
权限监听事件。不幸的是,您只能获得初始触摸事件,而不能将事件传递给较低的 Activity 。我很高兴你实际上不能那样做;你能想象恶意软件会如何利用它来获取用户的凭据。
关于android - 在服务中获取触摸事件(坐标、运动事件等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6704026/