Ничего себе, в этом вопросе так много чего не так, трудно понять, с чего начать! Давайте их в следующем порядке:
Что я пытаюсь сделать, это направить событие движения в настоящее время работает активность
В настоящее время на первом плане деятельность будет получать события движения, если оно не должно. Единственный способ, которым я могу представить, что это имеет смысл, заключается в том, что ваша служба поставила системное окно вверх, которое входит в число всех приложений ... и в этом случае я бы настоятельно рекомендовал вам не делать этого и просто оставить свой план активность обрабатывает событие.
Я получил ComponentName текущей деятельности от этого кода
ActivityManager.getRunningTasks() является не для нормального развития приложений. Это предназначено для таких задач, как управление задачами и т. Д. Вы никогда не должны писать основную программную логику, которая имеет зависимости от информации, возвращаемой этой функцией. Это попрошайничество, и на самом деле я могу гарантировать, что такой код сломается в какой-то момент. (Что происходит, когда несколько приложений могут быть запущены в передней и в то же время?)
Я хочу послать событие
Вы действительно, на самом деле не должно быть копирования событий движения из одного окна и набивая их другим. Состояние отправки не будет настроено правильно, состояние в событии не будет согласованным (событие было настроено с использованием источника и для исходного окна, а не нового, в которое вы его набиваете) и т. Д. Это другое отличный способ сделать сломанное приложение, которое имеет хорошие шансы взломать в будущем, если вы даже можете клонировать его, чтобы заставить его работать сегодня.
Я застрял на имени компонента. Как я могу получить экземпляр Activity, чтобы я мог отправить событие?
Действительно, все, что у вас есть, является именем компонента. Это не имеет ничего общего с активными экземплярами. Нет волшебного способа превратить это в фактический экземпляр. Было бы неправильно поставлять один, потому что это может быть легко двусмысленным (если было два экземпляра этого экземпляра).
Я думаю, вам нужно выполнить резервное копирование до самого начала и посмотреть, что вы на самом деле пытаетесь выполнить, чтобы получить помощь в отношении того, какой разумный способ приблизиться к нему. Путь, к которому вы попали, на данный момент довольно терминальный.
пожалуйста, положить немного больше усилий форматирования кода в следующий раз ... –