是否有可能通过服务以编程方式按Android上的后退按钮?通过服务按Android上的后退按钮
我知道我可以覆盖onBackPressed()方法,如果我是一个活动,但是我正在寻找的是在后台运行的服务有效的解决方案。
是否有可能通过服务以编程方式按Android上的后退按钮?通过服务按Android上的后退按钮
我知道我可以覆盖onBackPressed()方法,如果我是一个活动,但是我正在寻找的是在后台运行的服务有效的解决方案。
它不是一个好主意,直接让服务改变UI。您可以从该服务发送广播。任何在此时开放的活动都可以收听广播,然后决定采取适当的行动(在这种情况下关闭应用程序)。您可以模拟活动中的按键。
是否有可能以编程方式按下Android上的后退按钮通过服务?
号
我知道我可以覆盖onBackPressed()方法,如果我是一个活动,
这已无关“编程按后退按钮” 。
我正在寻找适用于在后台运行服务的解决方案。
您服务,欢迎发送邮件至您活动引起的活动来调用finish()
。您可以使用以下任何这样的消息:
LocalBroadcastManager
Intent
Messenger
但是,如果您的期望是,您将能够攻击ot的活动她的应用程式,迫使他们向打电话finish()
,这是不可能的。
称为SideBar(在Play Store上)的应用程序对返回键按下作出反应。这是一个前台服务,它将视图添加为系统覆盖图,并在按下后退键时删除视图。我想知道这是如何完成的。 – Phat7 2013-08-07 05:13:44
@ Phat7:这很好,但它与这个问题无关。随意打开一个新的问题。 – CommonsWare 2013-08-07 11:25:24
@CommonsWare:你能解释为什么我们无法在服务中执行后退按钮吗? – Jame 2016-11-25 03:33:07
的问题是,我需要的服务,以模拟的背衬,因为应用程序试图在特定情况下自动回压。使用活动是唯一的方法吗? – vsx06 2013-05-08 00:45:14
你可以尝试在http://stackoverflow.com/questions/4967178/how-to-generate-key-presses-programmatically-android该解决方案通过n0sferat0k。我还没有尝试,我也不会推荐这个。 – 2013-05-08 00:57:26
解决方案是否正常工作? – 2013-05-10 00:32:48