From dcf9502f48ee15c9bf1a50d7e19f6c4093dfd8f6 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Fri, 5 Jan 2024 14:48:13 +0800 Subject: [PATCH 1/5] =?UTF-8?q?1=EF=BC=8C=E6=96=B0=E5=A2=9E=E7=9B=91?= =?UTF-8?q?=E8=A7=86=E7=95=8C=E9=9D=A2=E8=BF=9E=E6=8E=A5=E5=8D=81=E7=A7=92?= =?UTF-8?q?=E8=B6=85=E6=97=B6=E5=90=8E=E5=8A=A8=E7=94=BB=E6=9A=82=E5=81=9C?= =?UTF-8?q?=20=E5=B9=B6=E5=8F=AF=E5=86=8D=E6=AC=A1=E7=82=B9=E5=87=BB?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5=202=EF=BC=8C=E4=BF=AE=E5=A4=8D1000885--10009?= =?UTF-8?q?04=E5=85=B119=E4=B8=AA=E5=85=B3=E4=BA=8E=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E7=82=B9=E5=87=BB=E7=B1=BB=E5=9E=8B=E6=9C=AA=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=80=A0=E6=88=90=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../realTimePicture/realTimePicture_page.dart | 7 +++- .../passwordKeyManage_tabbar.dart | 17 ++++++--- .../passwordKey_perpetual_logic.dart | 36 ++++++++++++------- .../passwordKey_perpetual_page.dart | 16 ++++----- .../passwordKey_perpetual_state.dart | 2 +- star_lock/lib/tools/eventBusEventManage.dart | 6 ++++ 6 files changed, 57 insertions(+), 27 deletions(-) diff --git a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart index 0b503d2c..189fe46c 100644 --- a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart +++ b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart @@ -39,6 +39,11 @@ class _RealTimePicturePageState extends State } }); + // 延迟10秒后自动暂停动画 + Future.delayed(const Duration(seconds: 10), () { + state.animationController.stop(); + }); + logic.udpMonitorAction(); } @@ -307,7 +312,7 @@ class _RealTimePicturePageState extends State ), ), onTap: () { - print('点击重新连接'); + state.animationController.forward(); }, ), ); diff --git a/star_lock/lib/main/lockDetail/passwordKey/passwordKeyManage/passwordKeyManage_tabbar.dart b/star_lock/lib/main/lockDetail/passwordKey/passwordKeyManage/passwordKeyManage_tabbar.dart index a9cd295e..279a038d 100644 --- a/star_lock/lib/main/lockDetail/passwordKey/passwordKeyManage/passwordKeyManage_tabbar.dart +++ b/star_lock/lib/main/lockDetail/passwordKey/passwordKeyManage/passwordKeyManage_tabbar.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; +import 'package:star_lock/tools/eventBusEventManage.dart'; import '../../../../app_settings/app_colors.dart'; import '../../../../tools/CustomUnderlineTabIndicator.dart'; @@ -13,9 +14,7 @@ class PasswordKeyManageTabbarPage extends StatefulWidget { final LockListInfoItemEntity keyInfo; PasswordKeyManageTabbarPage( - {Key? key, - required this.initialIndex, - required this.keyInfo}) + {Key? key, required this.initialIndex, required this.keyInfo}) : super(key: key); @override State createState() => @@ -44,6 +43,16 @@ class _PasswordKeyManageTabbarPageState vsync: this, length: _itemTabs.length, initialIndex: widget.initialIndex); + _tabController.addListener(handleTabIndex); + } + + int handleTabIndex() { + // 获取当前选定的标签索引 + int currentIndex = _tabController.index; + // 根据索引可以得知用户点击了哪个 item + print("User clicked on item at index $currentIndex"); + eventBus.fire(GetPasswordTypeUpdateIndex(currentIndex)); + return currentIndex; } @override @@ -102,7 +111,7 @@ class _PasswordKeyManageTabbarPageState controller: _tabController, children: _itemTabs .map((ItemView item) => PasswordKeyPerpetualPage( - type: item.type, + type: _tabController.index.toString(), getKeyInfo: widget.keyInfo, )) .toList(), diff --git a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart index 4fc142eb..3c5a71d8 100644 --- a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart +++ b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart @@ -4,6 +4,7 @@ import 'package:flutter_reactive_ble/flutter_reactive_ble.dart'; import 'package:star_lock/blue/io_type.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart'; import 'package:star_lock/network/api_repository.dart'; +import 'package:star_lock/tools/eventBusEventManage.dart'; import 'package:star_lock/tools/toast.dart'; import '../../../../blue/blue_manage.dart'; @@ -18,6 +19,15 @@ import '../../../../tools/storage.dart'; class PasswordKeyPerpetualLogic extends BaseGetXController { final PasswordKeyPerpetualState state = PasswordKeyPerpetualState(); + /// 收到点击密码类型更新 + StreamSubscription? getPasswordTypeUpdateIndexEvent; + void getPasswordTypeUpdateIndexAction() { + getPasswordTypeUpdateIndexEvent = + eventBus.on().listen((event) { + state.widgetType.value = event.passwordType; + }); + } + /** 单次 1 只能在开始时间后6小时内使用一次 永久 2 从开始时间开始永久有效,必需在开始时间24小时内使用一次,否则将失效 @@ -39,20 +49,20 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { String getFailureDateTime = '0'; String getEffectiveDateTime = '0'; String lockId = state.keyInfo.value.lockId.toString(); - int passwordType = int.parse(state.widgetType.value); - String getKeyType = passwordType.toString(); - if (passwordType == 0) { + print('得到的state.widgetType.value为:${state.widgetType.value}'); + String getKeyType = state.widgetType.value.toString(); + if (state.widgetType.value == 0) { //永久 getKeyType = '2'; - } else if (passwordType == 1) { + } else if (state.widgetType.value == 1) { //限时 getKeyType = '3'; - } else if (passwordType == 2) { + } else if (state.widgetType.value == 2) { //单次 getKeyType = '1'; - } else if (passwordType == 3) { + } else if (state.widgetType.value == 3) { //自定义 - } else if (passwordType == 4) { + } else if (state.widgetType.value == 4) { //循环 if (state.loopModeStr.value == '周末') { getKeyType = '5'; @@ -75,15 +85,15 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { } else if (state.loopModeStr.value == '星期日') { getKeyType = '14'; } - } else if (passwordType == 5) { + } else if (state.widgetType.value == 5) { //清空码 getKeyType = '4'; } print('得到的类型为getKeyType$getKeyType'); - if (state.widgetType.value != '0' && - state.widgetType.value != '2' && - state.widgetType.value != '5') { + if (state.widgetType.value != 0 && + state.widgetType.value != 2 && + state.widgetType.value != 5) { getFailureDateTime = state.failureDateTime.value.millisecondsSinceEpoch.toString(); getEffectiveDateTime = @@ -223,7 +233,8 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { // 设置自定义密码 Future senderCustomPasswords() async { - BlueManage().bludSendData(BlueManage().connectDeviceName, (DeviceConnectionState state) async { + BlueManage().bludSendData(BlueManage().connectDeviceName, + (DeviceConnectionState state) async { if (state == DeviceConnectionState.connected) { var publicKey = await Storage.getStringList(saveBluePublicKey); List publicKeyDataList = changeStringListToIntList(publicKey!); @@ -257,6 +268,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { super.onReady(); _initReplySubscription(); + getPasswordTypeUpdateIndexAction(); } @override diff --git a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart index 3c8f66b9..ebae5be7 100644 --- a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart +++ b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart @@ -5,6 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_colors.dart'; +import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyManage/passwordKeyManage_tabbar.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart'; import 'package:star_lock/tools/pickers/pickers.dart'; import 'package:star_lock/tools/pickers/style/default_style.dart'; @@ -54,8 +55,6 @@ class _PasswordKeyPerpetualPageState extends State { @override Widget build(BuildContext context) { - state.widgetType.value = widget.type; - return SingleChildScrollView( child: Obx(() => indexChangeWidget()), ); @@ -65,7 +64,7 @@ class _PasswordKeyPerpetualPageState extends State { if (state.isSendSuccess.value == true) { return sendElectronicKeySucceed(); } else { - switch (int.parse(widget.type)) { + switch (state.widgetType.value) { case 0: { // 永久 @@ -186,7 +185,7 @@ class _PasswordKeyPerpetualPageState extends State { action: () { Pickers.showDatePicker(context, mode: DateMode.YMDH, onConfirm: (p) { - if (int.parse(widget.type) == 3) { + if (state.widgetType.value == 3) { // 自定义 state.effectiveDateTime.value = DateTime.parse( '${p.year}-${intToStr(p.month!)}-${intToStr(p.day!)} ${intToStr(p.hour!)}:${intToStr(p.minute!)}'); @@ -216,7 +215,7 @@ class _PasswordKeyPerpetualPageState extends State { action: () { Pickers.showDatePicker(context, mode: DateMode.YMDH, onConfirm: (p) { - if (int.parse(widget.type) == 3) { + if (state.widgetType.value == 3) { // 自定义 state.failureDateTime.value = DateTime.parse( '${p.year}-${intToStr(p.month!)}-${intToStr(p.day!)} ${intToStr(p.hour!)}:${intToStr(p.minute!)}'); @@ -400,7 +399,6 @@ class _PasswordKeyPerpetualPageState extends State { onClick: () async { var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); if (isDemoMode == false) { - int getWidgetNumber = int.parse(widget.type); DateTime startDateTime = DateTime( state.effectiveDateTime.value.year, state.effectiveDateTime.value.month, @@ -413,7 +411,7 @@ class _PasswordKeyPerpetualPageState extends State { state.failureDateTime.value.hour); //自定义密码 - if (getWidgetNumber == 3) { + if (state.widgetType.value == 3) { logic.getStartDate(state.effectiveDateTime.value); if (state.nameController.text.isEmpty) { Toast.show(msg: '请输入姓名'); @@ -440,7 +438,7 @@ class _PasswordKeyPerpetualPageState extends State { } //限时 - if (getWidgetNumber == 1) { + if (state.widgetType.value == 1) { if (!startDateTime.isBefore(endDateTime) || startDateTime.isAtSameMomentAs(endDateTime)) { Toast.show(msg: '失效时间需大于生效时间'); @@ -448,7 +446,7 @@ class _PasswordKeyPerpetualPageState extends State { } } //循环密码 - if (getWidgetNumber == 4) { + if (state.widgetType.value == 4) { if (!startDateTime.isBefore(endDateTime) || startDateTime.isAtSameMomentAs(endDateTime)) { Toast.show(msg: '结束时间需大于当前时间'); diff --git a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart index b598460c..a5f20071 100644 --- a/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart +++ b/star_lock/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart @@ -43,6 +43,6 @@ class PasswordKeyPerpetualState { var loopEndHours = DateTime.now().hour.obs; var loopModeStr = '周末'.obs; //循环模式 - final widgetType = ''.obs; + final widgetType = 0.obs; final keyInfo = LockListInfoItemEntity().obs; } diff --git a/star_lock/lib/tools/eventBusEventManage.dart b/star_lock/lib/tools/eventBusEventManage.dart index eb2a6e51..6e60b3fc 100644 --- a/star_lock/lib/tools/eventBusEventManage.dart +++ b/star_lock/lib/tools/eventBusEventManage.dart @@ -67,3 +67,9 @@ class GetFirstFrameGoPush { bool isFirstFrame; GetFirstFrameGoPush(this.isFirstFrame); } + +/// 获取到实时点击的密码类型更新typeIndex +class GetPasswordTypeUpdateIndex { + int passwordType; + GetPasswordTypeUpdateIndex(this.passwordType); +} From 56079829c378f881cdb8272f09719c978b33c976 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Fri, 5 Jan 2024 15:05:45 +0800 Subject: [PATCH 2/5] =?UTF-8?q?1=EF=BC=8C=E6=96=B0=E5=A2=9E=E5=B7=B2?= =?UTF-8?q?=E9=97=AD=E9=94=81=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/images/main/locked_bg.png | Bin 0 -> 57806 bytes .../passwordKeyManage_tabbar.dart | 1 - .../passwordKey_perpetual_logic.dart | 2 -- 3 files changed, 3 deletions(-) create mode 100644 star_lock/images/main/locked_bg.png diff --git a/star_lock/images/main/locked_bg.png b/star_lock/images/main/locked_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..04f5fa5f146d22e4415b63a1890db7272cdee555 GIT binary patch literal 57806 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�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 Date: Fri, 5 Jan 2024 18:33:26 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8D=A1=E5=9B=BE=E7=89=87=E5=8F=8A=E5=B8=83=E5=B1=80=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/images/main/icon_addCard.png | Bin 0 -> 45222 bytes .../card/addICCard/addICCard_page.dart | 26 ++++++++++++++---- 2 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 star_lock/images/main/icon_addCard.png diff --git a/star_lock/images/main/icon_addCard.png b/star_lock/images/main/icon_addCard.png new file mode 100644 index 0000000000000000000000000000000000000000..0e2549792b45a8301c64e9ed8c50e2fd6cc31919 GIT binary patch literal 45222 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

j6kcxOH)GG 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 z z4V73hW-&Y??mwj)8>EMh+BkK%N)JtdGvx8^-!Dy|SF{4XYBW=6wdP3ox@yy-yrzYV zE8N;LyK@!>t5gFggpGF2KK{!4

ix8F1)u9?V}qIf?gbtM0HHTY2GyCDW5 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 s25`aI-Y38d!(@RM3|xvkRn+a literal 0 HcmV?d00001 diff --git a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart index 1c65025e..1ba01a70 100644 --- a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart +++ b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart @@ -24,7 +24,8 @@ class _AddICCardPageState extends State { return Scaffold( backgroundColor: AppColors.mainBackgroundColor, appBar: TitleAppBar( - barTitle: "${TranslationLoader.lanKeys!.add!.tr}${TranslationLoader.lanKeys!.card!.tr}", + barTitle: + "${TranslationLoader.lanKeys!.add!.tr}${TranslationLoader.lanKeys!.card!.tr}", haveBack: true, backgroundColor: AppColors.mainColor, ), @@ -32,22 +33,35 @@ class _AddICCardPageState extends State { crossAxisAlignment: CrossAxisAlignment.center, // mainAxisAlignment: MainAxisAlignment.center, children: [ - SizedBox(height: 420.h), - CupertinoActivityIndicator(radius: 25.h,), + SizedBox(height: 60.h), + Image.asset( + 'images/main/icon_addCard.png', + width: 234.w, + height: 211.h, + fit: BoxFit.cover, + ), + SizedBox(height: 90.h), + CupertinoActivityIndicator( + radius: 25.h, + ), SizedBox(height: 120.h), Container( width: 1.sw, height: 50.h, // padding: EdgeInsets.only(left: 30.w, right: 30.w, top: 10.h, bottom: 10.h), - margin: EdgeInsets.only(left: 15.w, right: 15.w, top: 10.h, bottom: 10.h), + margin: EdgeInsets.only( + left: 15.w, right: 15.w, top: 10.h, bottom: 10.h), // color: AppColors.blackColor, decoration: BoxDecoration( color: AppColors.blackColor, borderRadius: BorderRadius.circular(10.w), ), child: Center( - child: Obx(() => Text(state.ifConnectScuess.value ? "已连接到锁,请将卡靠近锁的读卡区" : "尝试连接设备...", style:TextStyle(color: Colors.white, fontSize: 24.sp))) - ), + child: Obx(() => Text( + state.ifConnectScuess.value + ? "已连接到锁,请将卡靠近锁的读卡区" + : "尝试连接设备...", + style: TextStyle(color: Colors.white, fontSize: 24.sp)))), ), ], ), From 6f9b26a19f90a1154f6d7bc0813cf2e4c54e4cde Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Sat, 6 Jan 2024 11:38:15 +0800 Subject: [PATCH 4/5] =?UTF-8?q?1=EF=BC=8C=E6=96=B0=E5=A2=9EAPP=E8=BF=9B?= =?UTF-8?q?=E5=85=A5=E5=90=8E=E5=8F=B0=E5=A6=82=E6=94=B6=E5=88=B0=E5=91=BC?= =?UTF-8?q?=E5=8F=AB=E4=B9=9F=E8=A6=81=E6=9C=89=E5=93=8D=E9=93=83=202?= =?UTF-8?q?=EF=BC=8C=E6=96=B0=E5=A2=9E=E5=B8=83=E5=B1=80=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/lib/main.dart | 5 ++++- .../lib/main/lockDetail/card/addICCard/addICCard_page.dart | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/star_lock/lib/main.dart b/star_lock/lib/main.dart index b223b6b8..f2efd509 100644 --- a/star_lock/lib/main.dart +++ b/star_lock/lib/main.dart @@ -9,6 +9,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_sound/flutter_sound.dart'; import 'package:get/get.dart'; import 'package:permission_handler/permission_handler.dart'; +import 'package:star_lock/talk/udp/udp_talkClass.dart'; import 'package:star_lock/tools/app_manager.dart'; import 'package:star_lock/tools/bindings/app_binding.dart'; import 'package:star_lock/tools/device_info_service.dart'; @@ -175,6 +176,9 @@ class _MyAppState extends State with WidgetsBindingObserver, BaseWidget { } else if (state == AppLifecycleState.paused) { // 应用进入后台 print("应用进入后台"); + if (UDPTalkClass().isBeCall == true) { + UDPTalkClass().playLocalAudio(); + } } } } @@ -233,4 +237,3 @@ Future getMicrophonePermission() async { } return false; } - diff --git a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart index 1ba01a70..676c6b41 100644 --- a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart +++ b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_page.dart @@ -33,7 +33,7 @@ class _AddICCardPageState extends State { crossAxisAlignment: CrossAxisAlignment.center, // mainAxisAlignment: MainAxisAlignment.center, children: [ - SizedBox(height: 60.h), + SizedBox(height: 200.h), Image.asset( 'images/main/icon_addCard.png', width: 234.w, From d9c76d870883d9b35d5930e7c4fd452755cb1b08 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Sat, 6 Jan 2024 14:49:44 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=AF=B9=E8=AE=B2=E6=8C=82=E6=96=AD?= =?UTF-8?q?=EF=BC=8C=E7=BB=93=E6=9D=9F=E9=9F=B3=E9=A2=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../realTimePicture_logic.dart | 2 + .../realTimePicture/realTimePicture_page.dart | 3 +- .../monitoring/lockMonitoring_logic.dart | 60 +++++++----- .../monitoring/lockMonitoring_page.dart | 96 ++++++++++--------- star_lock/lib/talk/call/callTalk.dart | 3 + star_lock/lib/talk/udp/udp_talkClass.dart | 20 +--- 6 files changed, 91 insertions(+), 93 deletions(-) diff --git a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_logic.dart b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_logic.dart index a4a6a6e1..452e1de1 100644 --- a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_logic.dart +++ b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_logic.dart @@ -6,6 +6,7 @@ import 'package:flutter_voice_processor/flutter_voice_processor.dart'; import 'package:get/get.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:star_lock/main/lockDetail/lockDetail/realTimePicture/realTimePicture_state.dart'; +import 'package:star_lock/talk/call/callTalk.dart'; import '../../../../talk/call/g711.dart'; import '../../../../talk/udp/udp_manage.dart'; @@ -62,6 +63,7 @@ class RealTimePictureLogic extends BaseGetXController { userMobile: await state.userMobile, userMobileIP: await state.userMobileIP, endData: []); + CallTalk().stopPcmSound(); // 关闭当前界面 Get.back(); diff --git a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart index 189fe46c..95663ece 100644 --- a/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart +++ b/star_lock/lib/main/lockDetail/lockDetail/realTimePicture/realTimePicture_page.dart @@ -3,6 +3,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/lockDetail/realTimePicture/realTimePicture_logic.dart'; +import 'package:star_lock/talk/call/callTalk.dart'; import '../../../../app_settings/app_colors.dart'; import '../../../../tools/showTFView.dart'; @@ -193,7 +194,7 @@ class _RealTimePicturePageState extends State bottomBtnItemWidget( "images/main/icon_lockDetail_hangUp.png", "挂断", Colors.red, () async { logic.stopProcessing(); - + CallTalk().stopPcmSound(); // 挂断 logic.udpHangUpAction(); }), diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart index a4b04980..e14baf60 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart @@ -1,4 +1,3 @@ - import 'dart:async'; import 'dart:convert'; import 'dart:math'; @@ -7,6 +6,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_voice_processor/flutter_voice_processor.dart'; import 'package:get/get.dart'; import 'package:permission_handler/permission_handler.dart'; +import 'package:star_lock/talk/call/callTalk.dart'; import '../../../../talk/call/g711.dart'; import '../../../../talk/udp/udp_manage.dart'; @@ -41,14 +41,16 @@ class LockMonitoringLogic extends BaseGetXController { /// 收到UDP发送的状态 StreamSubscription? _getUDPStatusRefreshUIEvent; void _getUDPStatusRefreshUIAction() { - _getUDPStatusRefreshUIEvent = eventBus.on().listen((event) { + _getUDPStatusRefreshUIEvent = + eventBus.on().listen((event) { state.udpStatus.value = event.udpStatus; - if(state.udpStatus.value == 8){ + if (state.udpStatus.value == 8) { // 接听成功了,然后刷新界面的时间 60秒以后自动挂断 - state.oneMinuteTimeTimer = Timer.periodic(const Duration(seconds:1), (Timer t) async { + state.oneMinuteTimeTimer = + Timer.periodic(const Duration(seconds: 1), (Timer t) async { state.oneMinuteTime.value++; // Get.log('state.oneMinuteTime.value:${state.oneMinuteTime.value}'); - if(state.oneMinuteTime.value >= 60){ + if (state.oneMinuteTime.value >= 60) { // 超过60秒了 state.oneMinuteTimeTimer.cancel(); state.oneMinuteTime.value = 0; @@ -63,6 +65,7 @@ class LockMonitoringLogic extends BaseGetXController { userMobileIP: await state.userMobileIP, endData: []); + CallTalk().stopPcmSound(); // 关闭当前界面 Get.back(); } @@ -81,8 +84,7 @@ class LockMonitoringLogic extends BaseGetXController { lockIP: UDPManage().host, userMobile: await state.userMobile, userMobileIP: await state.userMobileIP, - endData: [] - ); + endData: []); } /// 挂断 @@ -128,7 +130,9 @@ class LockMonitoringLogic extends BaseGetXController { while (start < audioData.length) { // await Future.delayed(const Duration(milliseconds: 50)); - int end = (start + length > audioData.length) ? audioData.length : start + length; + int end = (start + length > audioData.length) + ? audioData.length + : start + length; List sublist = audioData.sublist(start, end); sendRecordData({ "bytes": sublist, @@ -165,7 +169,9 @@ class LockMonitoringLogic extends BaseGetXController { errorListener(VoiceProcessorException error) { print("VoiceProcessorException: $error"); - }; + } + + ; state.voiceProcessor?.addFrameListener(frameListener); state.voiceProcessor?.addErrorListener(errorListener); @@ -173,15 +179,10 @@ class LockMonitoringLogic extends BaseGetXController { if (await state.voiceProcessor?.hasRecordAudioPermission() ?? false) { await state.voiceProcessor?.start(320, 8000); bool? isRecording = await state.voiceProcessor?.isRecording(); - - } else { - - } + } else {} } on PlatformException catch (ex) { Get.log("PlatformException: $ex"); - } finally { - - } + } finally {} } Future stopProcessing() async { @@ -189,9 +190,7 @@ class LockMonitoringLogic extends BaseGetXController { await state.voiceProcessor?.stop(); } on PlatformException catch (ex) { Get.log("PlatformException: $ex"); - } finally { - - } + } finally {} } void onError(Object e) { @@ -199,7 +198,6 @@ class LockMonitoringLogic extends BaseGetXController { } sendRecordData(Map args) async { - List bytes = args["bytes"]; // int udpSendDataFrameNumber = args["udpSendDataFrameNumber"]; String? lockID = args["lockID"]; @@ -218,7 +216,7 @@ class LockMonitoringLogic extends BaseGetXController { // while(list.isNotEmpty) { state.udpSendDataFrameNumber++; - if (state.udpSendDataFrameNumber >= 65536) state.udpSendDataFrameNumber=1; + if (state.udpSendDataFrameNumber >= 65536) state.udpSendDataFrameNumber = 1; // 57 List topBytes = []; @@ -281,7 +279,8 @@ class LockMonitoringLogic extends BaseGetXController { topBytes[6] = (state.udpSendDataFrameNumber & 0x000000FF); topBytes[7] = ((state.udpSendDataFrameNumber & 0x0000FF00) >> 8); - print("udpSendDataFrameNumber:${state.udpSendDataFrameNumber} topBytes[63]:${topBytes[6]} topBytes[64]:${topBytes[7]}"); + print( + "udpSendDataFrameNumber:${state.udpSendDataFrameNumber} topBytes[63]:${topBytes[6]} topBytes[64]:${topBytes[7]}"); topBytes.addAll(bytes); Get.log("setVoiceBytes:$topBytes"); @@ -293,8 +292,7 @@ class LockMonitoringLogic extends BaseGetXController { lockIP: lockIP, userMobile: userMobile, userMobileIP: userMobileIP, - endData: topBytes - ); + endData: topBytes); // UDPManage().sendData(topBytes); } @@ -324,7 +322,16 @@ class LockMonitoringLogic extends BaseGetXController { } int search(int val) { - List table = [0xFF, 0x1FF, 0x3FF, 0x7FF, 0xFFF, 0x1FFF, 0x3FFF, 0x7FFF]; + List table = [ + 0xFF, + 0x1FF, + 0x3FF, + 0x7FF, + 0xFFF, + 0x1FFF, + 0x3FFF, + 0x7FFF + ]; int size = 8; for (int i = 0; i < size; i++) { if (val <= table[i]) { @@ -392,9 +399,10 @@ class LockMonitoringLogic extends BaseGetXController { void onClose() { // TODO: implement onClose print("锁详情界面销毁了"); + CallTalk().stopPcmSound(); _getTVDataRefreshUIEvent!.cancel(); _getUDPStatusRefreshUIEvent!.cancel(); - if(state.oneMinuteTimeTimer != null){ + if (state.oneMinuteTimeTimer != null) { state.oneMinuteTimeTimer.cancel(); } stopProcessing(); diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart index 1bfca06f..a75674bd 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart @@ -1,8 +1,8 @@ - import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; +import 'package:star_lock/talk/call/callTalk.dart'; import '../../../../app_settings/app_colors.dart'; import '../../../../talk/udp/udp_manage.dart'; @@ -43,12 +43,15 @@ class _LockMonitoringPageState extends State { top: ScreenUtil().statusBarHeight + 30.h, width: 1.sw, child: Obx(() { - var sec = (state.oneMinuteTime.value % 60).toString().padLeft(2,'0'); - var min = (state.oneMinuteTime.value ~/ 60).toString().padLeft(2,'0'); + var sec = + (state.oneMinuteTime.value % 60).toString().padLeft(2, '0'); + var min = + (state.oneMinuteTime.value ~/ 60).toString().padLeft(2, '0'); return Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - Text("$min:$sec", style: TextStyle(fontSize: 26.sp, color: Colors.white)), + Text("$min:$sec", + style: TextStyle(fontSize: 26.sp, color: Colors.white)), // SizedBox(width: 30.w), // GestureDetector( // onTap: () { @@ -66,8 +69,7 @@ class _LockMonitoringPageState extends State { // ), // ), // ), - ] - ); + ]); }), ), Positioned( @@ -155,45 +157,44 @@ class _LockMonitoringPageState extends State { Widget bottomBottomBtnWidget() { return Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ // 接听 - Obx(() => bottomBtnItemWidget(getAnswerBtnImg(), getAnswerBtnName(), Colors.white, () async { - //获取麦克风权限 - await logic.getPermissionStatus().then((value) async { - if (!value) { - return; - } + Obx(() => bottomBtnItemWidget( + getAnswerBtnImg(), getAnswerBtnName(), Colors.white, () async { + //获取麦克风权限 + await logic.getPermissionStatus().then((value) async { + if (!value) { + return; + } - // state.isSenderAudioData.value = false; - print("发送接听了"); - // 刚进来是接听状态,然后改为长按对讲 - logic.udpAnswerAction(); - }); - }, - longPress: (){ - // 开始长按 - print("onLongPress"); - state.listAudioData.value = []; - if (state.udpStatus.value == 8) { - state.udpStatus.value = 9; - } - // logic.readG711Data(); - logic.startProcessing(); - }, - longPressUp: () async { - // 长按结束 - print("onLongPressUp"); - if (state.udpStatus.value == 9) { - state.udpStatus.value = 8; - } + // state.isSenderAudioData.value = false; + print("发送接听了"); + // 刚进来是接听状态,然后改为长按对讲 + logic.udpAnswerAction(); + }); + }, longPress: () { + // 开始长按 + print("onLongPress"); + state.listAudioData.value = []; + if (state.udpStatus.value == 8) { + state.udpStatus.value = 9; } - ) - ), - bottomBtnItemWidget("images/main/icon_lockDetail_hangUp.png", "挂断", Colors.red, () async { + // logic.readG711Data(); + logic.startProcessing(); + }, longPressUp: () async { + // 长按结束 + print("onLongPressUp"); + if (state.udpStatus.value == 9) { + state.udpStatus.value = 8; + } + })), + bottomBtnItemWidget( + "images/main/icon_lockDetail_hangUp.png", "挂断", Colors.red, () async { logic.stopProcessing(); - + CallTalk().stopPcmSound(); // 挂断 logic.udpHangUpAction(); }), - bottomBtnItemWidget("images/main/icon_lockDetail_monitoringUnlock.png", "开锁", AppColors.mainColor, () { + bottomBtnItemWidget("images/main/icon_lockDetail_monitoringUnlock.png", + "开锁", AppColors.mainColor, () { showDeletPasswordAlertDialog(context); }) ]); @@ -202,26 +203,28 @@ class _LockMonitoringPageState extends State { String getAnswerBtnImg() { switch (state.udpStatus.value) { case 8: - return "images/main/icon_lockDetail_monitoringUnTalkback.png"; + return "images/main/icon_lockDetail_monitoringUnTalkback.png"; case 9: - return "images/main/icon_lockDetail_monitoringTalkback.png"; + return "images/main/icon_lockDetail_monitoringTalkback.png"; default: - return "images/main/icon_lockDetail_monitoringAnswerCalls.png"; + return "images/main/icon_lockDetail_monitoringAnswerCalls.png"; } } String getAnswerBtnName() { switch (state.udpStatus.value) { case 8: - return "长按说话"; + return "长按说话"; case 9: - return "松开发送"; + return "松开发送"; default: - return "接听"; + return "接听"; } } - Widget bottomBtnItemWidget(String iconUrl, String name, Color backgroundColor, Function() onClick, {Function()? longPress, Function()? longPressUp}) { + Widget bottomBtnItemWidget( + String iconUrl, String name, Color backgroundColor, Function() onClick, + {Function()? longPress, Function()? longPressUp}) { var wh = 80.w; return GestureDetector( onTap: onClick, @@ -285,6 +288,5 @@ class _LockMonitoringPageState extends State { @override void dispose() { super.dispose(); - } } diff --git a/star_lock/lib/talk/call/callTalk.dart b/star_lock/lib/talk/call/callTalk.dart index 335e33cf..9316a486 100644 --- a/star_lock/lib/talk/call/callTalk.dart +++ b/star_lock/lib/talk/call/callTalk.dart @@ -153,6 +153,9 @@ class CallTalk { //停止接收音频数据 void stopPcmSound() { + FlutterPcmSound.setup(sampleRate: 8000, channelCount: 1); + FlutterPcmSound.pause(); + FlutterPcmSound.clear(); FlutterPcmSound.stop(); } } diff --git a/star_lock/lib/talk/udp/udp_talkClass.dart b/star_lock/lib/talk/udp/udp_talkClass.dart index 7cb332e4..62a28123 100644 --- a/star_lock/lib/talk/udp/udp_talkClass.dart +++ b/star_lock/lib/talk/udp/udp_talkClass.dart @@ -1,5 +1,4 @@ import 'dart:async'; - import 'package:audioplayers/audioplayers.dart'; import 'package:fast_gbk/fast_gbk.dart'; import 'package:flutter/material.dart'; @@ -71,11 +70,7 @@ class UDPTalkClass { UDPManage().sendData(data); }); - // _getFirstFrameGoPushAction(); - // Future.delayed(const Duration(seconds: 1), () { - // 在这里写要延迟执行的代码 - Get.toNamed(Routers.lockMonitoringPage, arguments: {"lockId": "111"}); - // }); + Get.toNamed(Routers.lockMonitoringPage, arguments: {"lockId": "111"}); } playLocalAudio(); @@ -84,19 +79,6 @@ class UDPTalkClass { } } - void _getFirstFrameGoPushAction() { - // 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus - StreamSubscription _GetFirstFrameGoPushEvent = - eventBus.on().listen((event) { - if (event.isFirstFrame == true) { - Future.delayed(const Duration(seconds: 1), () { - // 在这里写要延迟执行的代码 - Get.toNamed(Routers.lockMonitoringPage, arguments: {"lockId": "111"}); - }); - } - }); - } - // 判断是否是call的本人 Future isCallMe(List? data) async { final loginData = await Storage.getLoginData();