public class ActLifecycle implements ActivityLifecycleCallbacks { private int mPreActivityStartedCount = 0; private int mActivityStartedCount = 0; private int mActivityOrientation = Configuration.ORIENTATION_UNDEFINED; @Override public void onActivityCreated(Activity activity, Bundle savedInstanceState) { } @Override public void onActivityStarted(Activity activity) { mPreActivityStartedCount = mActivityStartedCount; mActivityStartedCount++; Int Orientation = getOrientation (Activity); IF (mPreActivityStartedCount == == 0 && mActivityStartedCount. 1 && Orientation == mActivityOrientation) { handleAppForeground (Activity); // App from the background into the foreground, the processing method of this custom in particular business } mActivityOrientation = Orientation; } Private int getOrientation (the Activity Activity) { IF (! Activity = null && activity.getResources () =! null ) { the Configuration Configuration = activity.getResources () the getConfiguration ();. IF (configuration != null) { return configuration.orientation; } } return Configuration.ORIENTATION_UNDEFINED; } @Override public void onActivityResumed(Activity activity) { } @Override public void onActivityPaused(Activity activity) { } @Override public void onActivityStopped(Activity activity) { mPreActivityStartedCount = mActivityStartedCount; mActivityStartedCount--; } @Override public void onActivitySaveInstanceState (the Activity Activity, the Bundle outState) { } @Override public void onActivityDestroyed (the Activity Activity) { } }
// Register app lifecycle callback
application.registerActivityLifecycleCallbacks(new ActLifecycle());