应用程序如何检测?

时间:2012-01-29 07:17:41

标签: java android

我一直在开发Android应用程序,它使用Activity和“download”按钮以及Service来在后台执行下载。我有以下任务:如果当前显示应用程序,则显示有关下载的消息。我该如何检测它?是否有标准的Android OS功能吗?谢谢。

2 个答案:

答案 0 :(得分:1)

您可以在活动级别执行此操作,而不是作为整体应用程序执行此操作。查看activity lifecycle的说明。 (另请参阅"管理活动生命周期"在Activities framework topic中。)当您的活动变得可见时,框架会将其称为onStart()方法。当用户可以与活动交互时,框架将调用onResume()方法。您可以覆盖其中一个,以了解您的活动何时显示或实际与用户进行交互。

请注意,正如文档中所述,从Honeycomb(3.0)开始,情况会有所不同。

答案 1 :(得分:0)

基本方法是使用广播接收器在服务和应用程序之间共享信息。如果您的要求是更新主要活动的下载状态/进度,则可以使用它。

Here是一个简单的教程,介绍如何在服务和活动之间共享信息。您可以更新下载进度。它适用于当前正在运行的活动。

要在活动开始时检查它,您应该覆盖onCreateonStart()onResume()个功能。

此外,在另一个问题中提出了一个非常简洁的解决方案,我建议你应该尝试使用它。它涉及扩展Application类以存储信息,并使用其实例来检查更新。见this