0

我正在尝试让应用程序侦听特定应用程序(A1)以启动,然后启动其他应用程序(A2)(用户选择)。

目前我使用两个权限,PACKAGE_USAGE_STATSBIND_ACCESSIBILITY_SERVICE。第一个权限当前用于检测特定应用程序 (A1) 何时启动。第二个权限用于模拟按钮按下,例如 home 或 back。

我之前尝试在使用下面的代码启动特定应用程序 (A1) 后立即启动另一个应用程序 (A2),但没有成功(应用程序 A1 仍在顶部)。

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

我意识到当离开特定应用程序(A1)并进入启动器/主屏幕时,可以启动另一个应用程序(A2)。我在特定应用程序 (A1) 启动后立即模拟了一次后按,然后成功启动了另一个应用程序 (A2)。这种方法的问题在于,当在第三个应用程序 (A3) 中并执行上述步骤时,我最终会进入第三个应用程序 (A3),换句话说,不会启动应用程序 A2。为了尝试找到解决方案,我想到了将后按改为主按的想法,这总是将我从所有应用程序带到启动器/主屏幕。但是,如果我来自第三个应用程序(A3)并启动 A1(例如通过最近菜单)然后按主页(通过代码)并尝试启动 A2(通过代码),

感谢所有帮助!

4

1 回答 1

0

我在之前关于 SO 的问题中找到了解决方案。

按下 HOME 按钮后从服务启动活动,没有 5 秒延迟

见秦斌的回答

于 2018-06-07T12:11:46.527 回答