如何强制我的应用程序移动到前台?

时间:2011-11-13 11:34:43

标签: android

我编写了一个应用程序,其中有一个流程,其中等待某个服务器事件发生(等待轮询直到返回所需的resault)。 很自然,等待时间是几分钟。 我希望应用程序用户能够运行其他应用程序,但是一旦我的应用程序线程获得了所需的服务器响应,我希望我的应用程序返回到前台。

如何将我的应用程序返回到forground(来自我的应用程序创建的线程)?

我尝试了runOnUiThread的常用方法,但是当我的应用程序不在前台时它没有用。

感谢。

2 个答案:

答案 0 :(得分:5)

强迫您的应用程序出现在用户身上是件坏事,也许他们做的更重要?

解决此问题的方法是使用notification,然后您的用户会收到新数据已到达的通知,并可以选择在他们有时间时打开您的应用程序。

答案 1 :(得分:1)

本着回答提出问题的精神......请参阅this post了解可能实现此目标的方法。

然而,仅仅因为你并不意味着你应该这样做!您的用户可能认为他们在开始执行异步任务时会立即回到您的应用中,但那是在他们的朋友被公交车碾过之前,他们现在想要使用手机拨打电话一辆救护车...

所以,不,它绝对不应该弹出并接管。它应该向用户显示通知,用户会在他们做好并准备就绪时点击它。正如Android文档本身所说:"后台服务永远不应自行启动活动以接收用户交互。" (强调他们的!)