知道活动是在前台还是后台运行



我使用特定的声音来通知用户某些事件。但是,如果活动不在前台,我不希望应用程序用声音通知用户。

如何检查应用程序是否在后台运行?

扩展mco的答案,如果您有前台活动,您的GCMIntentService需要做一些将触发您的前台活动中的工作的事情。通常,您将通过在onResume()中设置活动以响应某种消息并在onPause()中删除该消息来实现此目的。

"Some sort of message"可以是:

  • LocalBroadcastManager发送的Intent报文
  • 通过经典sendBroadcast()发送的Intent
  • 通过消息总线的消息,如Otto
  • 等。

在Activity周期中,onResume在应用程序变得可见(前台)时被调用,onPause在应用程序不可见(后台)时被调用。

当应用程序是后台/前台时,你可以使用这些函数做任何你想做的事情。

相关内容

  • 没有找到相关文章

最新更新