是否可以通过服务以编程方式按下 android 上的后退按钮?
我知道如果我在 Activity 中,我可以覆盖 onBackPressed() 方法,但我正在寻找一种适用于在后台运行的服务的解决方案。
让服务直接更改 UI 不是一个好主意。您可以从服务发送广播。此时打开的任何活动都可以收听广播,然后决定采取适当的措施(在这种情况下关闭应用程序)。您可以模拟活动中的按键。
是否可以通过服务以编程方式按下 android 上的后退按钮?
不。
我知道如果我在 Activity 中,我可以覆盖 onBackPressed() 方法,
这与“以编程方式按下后退按钮”无关。
我正在寻找一种适用于在后台运行的服务的解决方案。
欢迎您的服务向您的活动发送一条消息,该消息会导致活动调用finish()
。您可以对此类消息使用以下任何一种:
LocalBroadcastManager
Intent
Messenger
但是,如果您的期望是您将能够攻击其他应用程序的活动,迫使他们调用finish()
,那是不可能的。