Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

i want to simulate touch event . I am using this code

MotionEvent.PointerCoords[] coords = { new MotionEvent.PointerCoords() };
coords[0].x = 200;
coords[0].y = 200;
int[] ptrs = { 0 };
MotionEvent event =MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(), action, 1, ptrs, coords, 0, 1, 1, 0, 0,    InputDevice.SOURCE_TOUCHPAD, 0);
windowManager.injectPointerEvent(event, false);

the problem is with this line

windowManager.injectPointerEvent(event, false);

that i am unable to get access to WindowManger . When i try to use this

 WindowManager windowmanager=(WindowManager) Context.getSystemService(Context.WINDOW_SERVICE);

I received an error message . "Cannot make a static reference to the non-static method getSystemService(String) from the type Context"

Can anyone help me !!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
839 views
Welcome To Ask or Share your Answers For Others

1 Answer

This error: I received an error message . "Cannot make a static reference to the non-static method getSystemService(String) from the type Context" is your problem.

You need to get a reference to the context. Either the application context or the activity.

once you have a Context instance, you can call the .getSystemService method on it.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...