我一直在尝试让应用程序级的暂停和恢复类似于活动的onpause和onresume。我知道没有一个api有这个功能。
我试着关注这个帖子:http://curioustechizen.blogspot.com/2012/12/android-application-level-pause-and.html
但到目前为止我还没有运气。
有人能做到吗?你用了什么样的范式?
如果您需要我在这个问题中粘贴一些代码,请告诉我。
谢谢你的帮助
最佳答案
解决这个问题的另一个方法是跟踪每个活动中onstart()和onstop()调用的计数。例子:
首先,创建一个类来保存计数:
public class ActiveActivitiesTracker {
private static int sActiveActivities = 0;
public static void activityStarted()
{
if( sActiveActivities == 0 )
{
// TODO: Here is presumably "application level" resume
}
sActiveActivities++;
}
public static void activityStopped()
{
sActiveActivities--;
if( sActiveActivities == 0 )
{
// TODO: Here is presumably "application level" pause
}
}
}
然后在每个活动中,只需调用activityStarted()和activityStopped()方法:
@Override
public void onStart() {
super.onStart();
ActiveActivitiesTracker.activityStarted();
}
@Override
public void onStop() {
super.onStop();
ActiveActivitiesTracker.activityStopped();
}