您的位置:首页 > 移动开发 > Android开发

Android 应用监听后台切换前台的方法

2016-06-30 17:55 453 查看
Android在SDK14的时候提供了一个Callback。ActivityLifecycleCallbacks,你可以通过这个Callback拿到App所有Activity的生命周期回调。通过对比ActivityLifecycleCallbacks中onActivityStarted返回的activity实例与上一个返回的实例进行对比,如果不相同,说明应用一直在前台activity之间进行切换,如果相同,则说明应用从后台切换到前台。通过回调触发事件。代码如下:
private void LifeCallBack(){
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {

@Override
public void onActivityStopped(Activity activity) {
}

@Override
public void onActivityStarted(Activity activity) {
if (activity_old==null){
activity_old=activity;
}else {
if (activity_old!=activity){
activity_old=activity;
}else {
checkLifeback.appStatus();
}
}
}

@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
}

@Override
public void onActivityResumed(Activity activity) {
}

@Override
public void onActivityPaused(Activity activity) {
}

@Override
public void onActivityDestroyed(Activity activity) {
}

@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
}
});

}
public interface CheckLifeBack{
void appStatus();
}
public static CheckLifeBack checkLifeback;
public  static void setOnCheckLifeBack(CheckLifeBack checkLifeBack){
checkLifeback=checkLifeBack;
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: