优化视频对讲 优化

This commit is contained in:
sky_min 2025-11-11 18:00:38 +08:00
parent 705ba72e31
commit 749b79f2b1
3 changed files with 28 additions and 0 deletions

View File

@ -39,6 +39,7 @@ import '../../../blue/io_tool/io_tool.dart';
import '../../../blue/io_tool/manager_event_bus.dart'; import '../../../blue/io_tool/manager_event_bus.dart';
import '../../../blue/sender_manage.dart'; import '../../../blue/sender_manage.dart';
import '../../../network/api_repository.dart'; import '../../../network/api_repository.dart';
import '../../../talk/other/audio_player_manager.dart';
import '../../../tools/baseGetXController.dart'; import '../../../tools/baseGetXController.dart';
import '../../../tools/commonDataManage.dart'; import '../../../tools/commonDataManage.dart';
import '../../../tools/dateTool.dart'; import '../../../tools/dateTool.dart';
@ -848,6 +849,8 @@ class LockDetailLogic extends BaseGetXController {
showToast('设备未配网'.tr); showToast('设备未配网'.tr);
return; return;
} }
//
AudioPlayerManager().disableRingtone();
// //
// PacketLossStatistics().reset(); // PacketLossStatistics().reset();
// id // id

View File

@ -8,6 +8,23 @@ class AudioPlayerManager {
// //
AudioPlayerManager._(); AudioPlayerManager._();
static bool _ringtoneEnabled = true;
//
void disableRingtone() {
_ringtoneEnabled = false;
}
//
void enableRingtone() {
_ringtoneEnabled = true;
}
//
bool isRingtoneEnabled() {
return _ringtoneEnabled;
}
// //
static final AudioPlayerManager _instance = AudioPlayerManager._(); static final AudioPlayerManager _instance = AudioPlayerManager._();
@ -21,6 +38,11 @@ class AudioPlayerManager {
// //
Future<void> playRingtone() async { Future<void> playRingtone() async {
//
if (!isRingtoneEnabled()) {
log(text: 'Ringtone is disabled, skipping playback.');
return;
}
if (_isPlaying) { if (_isPlaying) {
log(text: 'Ringtone is already playing.'); log(text: 'Ringtone is already playing.');
return; return;

View File

@ -6,6 +6,7 @@ import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart'; import 'package:flutter/scheduler.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -23,6 +24,7 @@ import 'package:star_lock/talk/starChart/views/talkView/talk_view_state.dart';
import 'package:video_decode_plugin/video_decode_plugin.dart'; import 'package:video_decode_plugin/video_decode_plugin.dart';
import '../../../../app_settings/app_colors.dart'; import '../../../../app_settings/app_colors.dart';
import '../../../../app_settings/app_settings.dart';
import '../../../../tools/showTFView.dart'; import '../../../../tools/showTFView.dart';
class TalkViewNativeDecodePage extends StatefulWidget { class TalkViewNativeDecodePage extends StatefulWidget {
@ -408,6 +410,7 @@ class _TalkViewNativeDecodePageState extends State<TalkViewNativeDecodePage> wit
return '接听'.tr; return '接听'.tr;
case TalkStatus.proactivelyCallWaitingAnswer: case TalkStatus.proactivelyCallWaitingAnswer:
case TalkStatus.answeredSuccessfully: case TalkStatus.answeredSuccessfully:
case TalkStatus.hangingUpDuring:
return '长按说话'.tr; return '长按说话'.tr;
default: default:
return '接听'.tr; return '接听'.tr;