如何检查当前是否打开任何活动

时间:2019-07-03 14:03:01

标签: android android-activity

在我的后台服务的android应用程序中,我要启动具有透明背景的活动。由于应用程序是透明的,因此我始终希望将其显示在应用程序的其他活动中。因此,在启动之前,我需要以某种方式检查当前是否打开了任何活动,是否没有打开家庭活动,以及之后的透明活动。但是,如果已经打开了应用程序,那么我想在最近的活动之上打开新活动。

我该如何实现?我发现的唯一问题就是如何检查我的应用程序是否在前台。但是当我的应用程序处于后台时,我仍然想在最近的活动之上打开我的透明活动。

1 个答案:

答案 0 :(得分:0)

class FirebaseDbApplication : Application() {
    override fun onCreate() {
        super.onCreate()
    }

    companion object{

        private var sIsChatActivityOpen = false

        fun isChatActivityOpen() : Boolean {
            return sIsChatActivityOpen
        }

        fun setChatActivityOpen(isChatActivityOpen: Boolean) {
            this.sIsChatActivityOpen = isChatActivityOpen
        }

    }
}

//在您的活动中

 override fun onResume() {
        super.onResume()
        FirebaseDbApplication.setChatActivityOpen(true)
    }

    override fun onPause() {
        super.onPause()
        FirebaseDbApplication.setChatActivityOpen(false)
    }

//检查活动是否打开

if (FirebaseDbApplication.isChatActivityOpen()) {
   // Activity is opened 
}
else{
   // Activity is closed
}
相关问题