Runt
5 days ago b875f04e7d0365501272ee5d77592fea6fff7780
libmvi/src/main/java/com/runt/open/mvi/OpenApplication.kt
@@ -3,7 +3,6 @@
import android.app.Activity
import android.app.Application
import android.os.Bundle
import android.os.Process
import android.util.Log
/**
@@ -14,7 +13,7 @@
open class OpenApplication :Application(){
    val TAG = "MyApplication"
    var activities : MutableList<Activity> = ArrayList()
    var activities  = ArrayList<Activity>()
    private var currentActivity : Activity? = null //当前activity
    private var isInfront = false //是否前台运行
@@ -31,8 +30,8 @@
        application = this //CrashReport.initCrashReport(getApplicationContext(), "8d88679ae9", false);//注册bugly
        registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks {
            override fun onActivityCreated(activity : Activity , savedInstanceState : Bundle?) {
                Log.d(TAG , "onActivityCreated " + activity.javaClass.simpleName)
                if (! activities.contains(activity)) {
                Log.d(TAG , "onActivityCreated " + activity.javaClass.simpleName + " ${activities.size}")
                if (!activities.contains(activity)) {
                    activities.add(activity)
                }
            }
@@ -45,7 +44,10 @@
            override fun onActivityResumed(activity : Activity) {
                Log.d(TAG , "onActivityResumed " + activity.javaClass.simpleName)
                currentActivity = activity
                isInfront = true
                if(activities.indexOf(activity) == activities.size - 1){
                    isInfront = true
                    Log.e(TAG , "onActivityResumed: 回到前台")
                }
            }
            override fun onActivityPaused(activity : Activity) {
@@ -57,8 +59,11 @@
            }
            override fun onActivitySaveInstanceState(activity : Activity , bundle : Bundle) {
                Log.d(TAG , "onActivitySaveInstanceState " + activity.javaClass.simpleName)
                isInfront = false
                Log.d(TAG , "onActivitySaveInstanceState " + activity.javaClass.simpleName + " index = ${activities.indexOf(activity)} , size = ${activities.size}")
                if(activities.indexOf(activity) == activities.size - 1){
                    isInfront = false
                    Log.e(TAG , "onActivitySaveInstanceState: 进入后台")
                }
            }
            override fun onActivityDestroyed(activity : Activity) {
@@ -73,7 +78,6 @@
            for (activity in activities) {
                activity.finish()
            }
            Process.killProcess(Process.myPid())
            System.exit(0)
        }
    }