Android - слушайте конкретное приложение для запуска и запускайте другое приложение - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь заставить приложение прослушивать определенное приложение (A1) для запуска, а затем вместо этого запустить другое приложение (A2) (выбор пользователя).

В настоящее время я использую два разрешения, PACKAGE_USAGE_STATS и BIND_ACCESSIBILITY_SERVICE .Первое разрешение в настоящее время используется для определения момента запуска конкретного приложения (A1).Второе разрешение используется для имитации нажатия кнопки, например, дома или назад.

Ранее я пытался запустить другое приложение (A2), как только конкретное приложение (A1) было запущено с использованием приведенного ниже кода безуспех (приложение А1 все еще находится на вершине).

Intent intent = activity.getPackageManager().getLaunchIntentForPackage(SPECIFIC_APPLICATION_PKG); activity.startActivity(intent);

Я понял, что при выходе из конкретного приложения (А1) и переходе на панель запуска / домашний экран можно было запуститьдругое приложение (А2).Я смоделировал обратное нажатие, как только запустилось определенное приложение (A1), а затем успешно запустило другое приложение (A2).Проблема этого метода заключалась в том, что, находясь внутри третьего приложения (A3) и выполняя описанные выше шаги, я оказывался в третьем приложении (A3), другими словами, не запуская приложение A2.Чтобы попытаться найти решение для этого, я подумал о том, чтобы вместо этого переключить заднюю печать на домашнюю, это всегда приводит меня к запуску / домашнему экрану из всех приложений.Однако, если я происходил из третьего приложения (A3) и запускаю A1 (через, например, меню последних), затем нажмите home (через код) и пытаюсь запустить A2 (через код), вместо этого мы по какой-то причине переходим к A3, что я могуне понимаю.

Вся помощь приветствуется!

1 Ответ

0 голосов
/ 07 июня 2018

Я нашел решение в предыдущем заданном вопросе здесь на SO.

Запуск операции из службы после нажатия кнопки HOME без задержки 5 секунд

См.Ответ Чинибина

...