2010-11-22 25 views
2

我有这个要求来发送我的应用程序背景,然后将它带到一些关键捕获目标(而不是从应用程序启动器offcourse)的前景所以我怎样才能发送当前任务到背景和把它带到前台?将任务发送到背景并将其带到前台

回答

5

如果用户按下后退键,使用moveTaskToBack()在后台发送活动并仍然运行。 请参阅:Activity关于如何做到这一点的方式。它很简单。

所以为了做到这一点,您还需要重写onBackPressed()方法或onKeyPressed()并在后退按钮被按下的情况下调用此方法(不要忘记在后面按下的方法返回true,以便android知道你消耗了事件并且不完成活动)。

为了返回到此活动,您已转移到后台,您可以发布带有待处理意图的通知以将其启动并将自动将活动带到前台。

希望这会有所帮助。

0

要将应用程序发送到后台,您应该从Activity类中调用moveTaskToBack()。当你的活动获得新的意图时(顺便说一句,你的活动中的onNewIntent()方法将被调用),你的活动由系统进入前台(你不必做任何事情)。

+0

感谢Martin,我的用例是这样的,我的应用程序的用户在应用程序列表中找不到应用程序图标,因此他无法启动它。相反,他会通过按下一些组合键来启动/将应用程序发送给foregorund。所以我想以编程方式做启动器的工作。这方面的任何帮助都会很大 – Shri 2010-11-22 15:54:59

0

你是什么意思的“背景?”在您创建新活动时,活动会相互堆叠,然后使用设备的后退按钮以相反顺序进行访问。想想push()和pop()方法,它是相同的范例。需要非交互式运行代码的应用程序应该扩展android.app.Service,但要注意,您可以通过一些实际的操作来实现服务。流氓程序会消耗电池寿命并降低UI响应速度。

0

我解决了当返回键被

将体现的Android按下有关通知开始用新鲜的活动后moveTaskToBack(真)的所有问题:launchMode =“SingleTask”机器人:clearTaskOnLaunch =“真”的活动xml标记部分