1

我尝试制作只有在应用程序 UI可见时才必须工作的通知。我试图存储写在我onStart()的. 但有时,它不起作用,因为另一个应用程序在没有被调用的情况下变得可见。onStop()ActivityMyActivity.onStop()

如果 MyApplication 现在可见,我可以为服务使用什么其他方法来确定?或者,也许是 MyActivity?

4

1 回答 1

1

如果您已经有代码来跟踪应用程序 UI 的状态,您可能只需将代码放入onPause()andonResume()而不是onStart()and即可使其工作onStop()

UI 可能不可见或部分隐藏,甚至在onStop()被调用之前......正如您所发现的那样。

看看这里的 Android Activity 生命周期图:

http://developer.android.com/images/activity_lifecycle.png

并注意描述

活动的前台生命周期发生在对 的调用与对 onResume()的相应调用之间onPause()。在此期间,活动位于所有其他活动之前并与用户交互。一个活动经常会在恢复和暂停状态之间切换——例如,当设备进入睡眠状态、传递活动结果时、传递新意图时——因此这些方法中的代码应该是相当轻量级的。

在此处的另一个问题中阅读有关此内容的更多信息

于 2013-05-28T11:26:32.317 回答