Browse Source

[fix]优化录音服务未启动时不替换通知

zk 1 năm trước cách đây
mục cha
commit
115fb9ec91
1 tập tin đã thay đổi với 6 bổ sung4 xóa
  1. 6 4
      lib/module/record/record_handler.dart

+ 6 - 4
lib/module/record/record_handler.dart

@@ -66,8 +66,9 @@ class RecordHandler {
 
   void _initRecordDurationStream() {
     _currentDurationListener?.cancel();
-    _currentDurationListener = currentDuration.listen((event) {
-      if (currentStatus.value == RecordStatus.pending) {
+    _currentDurationListener = currentDuration.listen((event) async {
+      if (currentStatus.value == RecordStatus.pending ||
+          !await FlutterForegroundTask.isRunningService) {
         return;
       }
       NotificationUtil.showRecordNotification(
@@ -156,9 +157,10 @@ class RecordHandler {
     }
   }
 
-  void _changeRecordStatus(RecordStatus status) {
+  void _changeRecordStatus(RecordStatus status) async {
     currentStatus.value = status;
-    if (status == RecordStatus.pending) {
+    if (status == RecordStatus.pending ||
+        !await FlutterForegroundTask.isRunningService) {
       return;
     }
     NotificationUtil.showRecordNotification(