2013-05-28 3 views
0

Я хочу создать сервисное приложение, которое своевременно отправляет события прикосновения к экрану. Предвидимая деятельность, вероятно, является 3pp-приложением.Как получить экземпляр действия переднего плана?

Мои коды:

public void myClickEvent(float x, float y) { 
    long firstTime = SystemClock.uptimeMillis(); 
    final MotionEvent firstEvent = MotionEvent.obtain(firstTime, firstTime, 
      MotionEvent.ACTION_DOWN, x, y, 0); 

    long secondTime = firstTime + 100; 
    final MotionEvent secondEvent = MotionEvent.obtain(secondTime, 
      secondTime, MotionEvent.ACTION_UP, x, y, 0); 

    dispatchTouchEvent(firstEvent); 
    dispatchTouchEvent(secondEvent); 
} 

Но служба не имеет dispatchTouchEvent(), как деятельность. Единственный способ получить экземпляр действия переднего плана в моей службе. Как это сделать? Большое спасибо за ваше предложение.

ответ

0

Вы можете: 1. Поймать мероприятие в своей деятельности A. 2. Отправлять данные в действие B. Вы можете использовать BroadcastReceiver.

Если вам нужно отправить передач в различных приложениях: http://developer.android.com/reference/android/content/BroadcastReceiver.html

+0

Моя вина не описана четко. – Led

+0

Фактически, активность A, выполняющая передний план, не создается мной. Это может быть любое приложение, которое я не могу изменить, например настройку, игры и т. Д. Единственное, что я знаю, это то, что активность A может обрабатывать событие с сенсорным экраном, но как я могу узнать, что такое текущая активность A в моей деятельности B? – Led