Как получить Activity из Service

Всем привет!

У меня есть необходимость делать программное нажатие в разных активити, но в рамках одного приложения.

Я принял решение делать это через показ приложения поверх других приложений. Для создания плавающего виджета я скопировал код отсюда.

Теперь мне осталось лишь сделать клик. Для этого я создал такой метод:

void simulateEventDown(Activity yourActivity , float x, float y )

    {
//Нажатие
        MotionEvent e = MotionEvent.obtain( SystemClock.uptimeMillis(), SystemClock.uptimeMillis(),
                MotionEvent.ACTION_DOWN, x, y, 0);
        yourActivity.dispatchTouchEvent(e);
//Тут отжатие
        MotionEvent e2 = MotionEvent.obtain( SystemClock.uptimeMillis(), SystemClock.uptimeMillis(),
                MotionEvent.ACTION_UP, x, y, 0);
        yourActivity.dispatchTouchEvent(e2);

    }

Он принимает Activity, но Service не содержит Activity,как это странно бы не казалось. В Android и в Java я новичок, поэтому рад любому совету! Может кто из вас сталкивался с таким или имеет другое решение данной проблемы, делитесь, буду рад каждому комментарию

P.S. К активити, в котором необходимо делать клик у меня нет доступа (Это библиотека).

UPDATE
Узнал, что по мимо Activity, такое можно провернуть и с View, только тогда, нажатие будут происходить только внутри этого View


Ответы (0 шт):