From fb32388536146f57c0b6e8236ad4f2d014c9ec56 Mon Sep 17 00:00:00 2001 From: orz12 Date: Sun, 4 Feb 2024 16:41:44 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=20=E5=B0=9D=E8=AF=95=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E7=84=A6=E7=82=B9=E6=81=A2=E5=A4=8D=E6=97=B6=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=92=AD=E6=94=BE=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/services/audio_session.dart | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/services/audio_session.dart b/lib/services/audio_session.dart index 98707652a..57c42e053 100644 --- a/lib/services/audio_session.dart +++ b/lib/services/audio_session.dart @@ -20,11 +20,15 @@ class AudioSessionHandler { session.interruptionEventStream.listen((event) { final player = PlPlayerController.getInstance(); if (event.begin) { + if (player.playerStatus != PlayerStatus.playing) return; switch (event.type) { case AudioInterruptionType.duck: player.setVolume(player.volume.value * 0.5); break; case AudioInterruptionType.pause: + player.pause(isInterrupt: true); + _playInterrupted = true; + break; case AudioInterruptionType.unknown: player.pause(isInterrupt: true); _playInterrupted = true; @@ -36,7 +40,7 @@ class AudioSessionHandler { player.setVolume(player.volume.value * 2); break; case AudioInterruptionType.pause: - if (_playInterrupted) PlPlayerController.getInstance().play(); + if (_playInterrupted) player.play(); break; case AudioInterruptionType.unknown: break; @@ -47,7 +51,10 @@ class AudioSessionHandler { // 耳机拔出暂停 session.becomingNoisyEventStream.listen((_) { - PlPlayerController.getInstance().pause(); + final player = PlPlayerController.getInstance(); + if (player.playerStatus == PlayerStatus.playing) { + player.pause(); + } }); } } From 8950658f0818344c7306ac073bce00a2e5c96416 Mon Sep 17 00:00:00 2001 From: orz12 Date: Fri, 16 Feb 2024 19:52:21 +0800 Subject: [PATCH 2/2] =?UTF-8?q?mod:=20=E5=9B=BE=E7=89=87=E9=A2=84=E8=A7=88?= =?UTF-8?q?=E9=A1=B5=EF=BC=8C=E5=AE=89=E5=8D=93=E4=B9=9F=E9=9A=90=E8=97=8F?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=A0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/pages/preview/view.dart | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/pages/preview/view.dart b/lib/pages/preview/view.dart index 1c37c8332..dcffc9730 100644 --- a/lib/pages/preview/view.dart +++ b/lib/pages/preview/view.dart @@ -102,15 +102,12 @@ class _ImagePreviewState extends State ); } - // 设置状态栏图标透明 + // 隐藏状态栏,避免遮挡图片内容 setStatusBar() async { - if (Platform.isIOS) { + if (Platform.isIOS || Platform.isAndroid) { await StatusBarControl.setHidden(true, animation: StatusBarAnimation.SLIDE); } - if (Platform.isAndroid) { - await StatusBarControl.setColor(Colors.transparent); - } } @override