2011-08-19 70 views
3

我想要检测应用程序何时暂停(例如,当用户按主页按钮或启动另一个应用程序时)。检测应用程序的暂停(不是活动)

某些应用程序检测到这种情况并显示如下通知:“应用程序....在后台运行”。我需要做同样的事情,但在数据库中保存一些对象。

在此先感谢

回答

-2

在应用程序的所有活动就覆盖下面的方法。

protected void onPause() {  
    //do your work 
    super.onPause();   
} 
1

OnPause在活动生命周期中是您的答案。当你的应用程序暂停时,你的活动也是如此。

小心不要做任何需要很长时间的事情。在下一个活动可以开始或恢复之前,OnPause方法必须完成。因此,如果用户按下主页按钮,您的OnPause必须在用户可以看到启动程序之前完成。

0
关于党

晚...

您可以实现Application.ActivityLifecycleCallbacks接口和活动正在暂停和恢复存储。如果在onPaused上获得的活动与onResume上最后记录的活动相同,那么您的应用即将转到后台,在旧的恢复之前会重新开始新活动。如果收到与onResume上记录的最后一个活动不同的活动,则表示用户正在导航到您应用内的其他活动。