我一直在尝试让应用程序级的暂停和恢复类似于活动的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();
}

08-04 07:49