Horis hace 2 años
padre
commit
ecad823ed9
Se han modificado 1 ficheros con 10 adiciones y 2 borrados
  1. 10 2
      app/src/main/java/io/legado/app/help/AppFreezeMonitor.kt

+ 10 - 2
app/src/main/java/io/legado/app/help/AppFreezeMonitor.kt

@@ -23,14 +23,22 @@ object AppFreezeMonitor {
         ScreenStatusReceiver()
         ScreenStatusReceiver()
     }
     }
 
 
+    private var registeredReceiver = false
+
     @SuppressLint("UnspecifiedRegisterReceiverFlag")
     @SuppressLint("UnspecifiedRegisterReceiverFlag")
     fun init(context: Context) {
     fun init(context: Context) {
         if (!AppConfig.recordLog) {
         if (!AppConfig.recordLog) {
-            context.unregisterReceiver(screenStatusReceiver)
+            if (registeredReceiver) {
+                registeredReceiver = false
+                context.unregisterReceiver(screenStatusReceiver)
+            }
             return
             return
         }
         }
 
 
-        context.registerReceiver(screenStatusReceiver, screenStatusReceiver.filter)
+        if (!registeredReceiver) {
+            registeredReceiver = true
+            context.registerReceiver(screenStatusReceiver, screenStatusReceiver.filter)
+        }
 
 
         var previous = SystemClock.uptimeMillis()
         var previous = SystemClock.uptimeMillis()