这里主要用到了ActivityLifecycleCallBacks和ComponentCallBacks2 若有不懂请自行百度
/**
* Created by Vigny on 2017/7/6.
* 从后台切回展示广告页面
*/
public class SplashAdWrapper implements Application.ActivityLifecycleCallbacks, ComponentCallbacks2 {
private boolean mIsBackground;
/******
* 使用方式:在Application中直接构造即可
* @param application
*/
public SplashAdWrapper(Application application) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
application.registerActivityLifecycleCallbacks(this);
application.registerComponentCallbacks(this);
}
}
/*****
* 解除绑定
*/
public void release(Application application) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
application.unregisterActivityLifecycleCallbacks(this);
application.unregisterComponentCallbacks(this);
}
}
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
}
@Override
public void onActivityStarted(Activity activity) {
}
@Override
public void onActivityResumed(Activity activity) {
if (mIsBackground) {
mIsBackground = false;
Log.i("zzr", "从广告页回到前台");
}
}
@Override
public void onActivityPaused(Activity activity) {
}
@Override
public void onActivityStopped(Activity activity) {
}
@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
}
@Override
public void onActivityDestroyed(Activity activity) {
}
@Override
public void onTrimMemory(int level) {
//监听应用是否退到后台
if (level == TRIM_MEMORY_UI_HIDDEN) {
mIsBackground = true;
Log.i("zzr", "应用退出到后台");
}
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
}
@Override
public void onLowMemory() {
}}