Skip to content

Commit 25c0dc6

Browse files
committed
修复前后台回调监听消息不回调的问题
1 parent e352127 commit 25c0dc6

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

CHANGE_lOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
# CHANGE LOG
2+
### 1.5.7
3+
4+
+ 修复前后台回调监听消息不回调的问题
5+
26
### 1.5.6
37

48
+ 优化ActivityManager,支持多屏Activity

app/src/main/java/com/catchpig/kmvvm/main/view/MainActivity.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ import com.catchpig.kmvvm.entity.UserSharedPrefs
99
import com.catchpig.kmvvm.main.viewmodel.MainViewModel
1010
import com.catchpig.mvvm.base.activity.BaseVMActivity
1111
import com.catchpig.mvvm.ext.lifecycleNull
12+
import com.catchpig.mvvm.manager.ActivityManager
1213
import com.catchpig.utils.ext.logd
14+
import com.catchpig.utils.ext.logi
1315
import com.gyf.immersionbar.ktx.immersionBar
1416
import kotlinx.coroutines.flow.flow
1517

@@ -25,6 +27,15 @@ class MainActivity : BaseVMActivity<ActivityMainBinding, MainViewModel>(),
2527
immersionBar {
2628
statusBarDarkFont(true, 0.5f)
2729
}
30+
ActivityManager.addAppStatusListener(object : ActivityManager.OnAppStatusListener {
31+
override fun onForeground(displayId: Int) {
32+
"onForeground->displayId:$displayId".logi(TAG)
33+
}
34+
35+
override fun onBackground(displayId: Int) {
36+
"onBackground->displayId:$displayId".logi(TAG)
37+
}
38+
})
2839
}
2940

3041
override fun initView() {

mvvm/src/main/java/com/catchpig/mvvm/manager/ActivityManager.kt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,9 @@ object ActivityManager {
3838
if (displayAppStatusListener.containsKey(displayId)) {
3939
return displayAppStatusListener[displayId]!!
4040
}
41-
return mutableListOf()
41+
val mutableList = mutableListOf<OnAppStatusListener>()
42+
displayAppStatusListener[displayId] = mutableList
43+
return mutableList
4244
}
4345

4446
/**
@@ -98,8 +100,11 @@ object ActivityManager {
98100
private fun getActivities(displayId: Int): MutableList<Activity> {
99101
if (displayActivities.containsKey(displayId)) {
100102
return displayActivities[displayId]!!
103+
101104
}
102-
return mutableListOf()
105+
val mutableList = mutableListOf<Activity>()
106+
displayActivities[displayId] = mutableList
107+
return mutableList
103108
}
104109

105110
/**

0 commit comments

Comments
 (0)