diff --git a/assets/audio/yinxiao1064.mp3 b/assets/audio/clacks.mp3 similarity index 100% rename from assets/audio/yinxiao1064.mp3 rename to assets/audio/clacks.mp3 diff --git a/assets/audio/click.mp3 b/assets/audio/click.mp3 new file mode 100644 index 0000000..cc64808 Binary files /dev/null and b/assets/audio/click.mp3 differ diff --git a/lib/components/commonFun.dart b/lib/components/commonFun.dart index ea22bc3..58ab3f2 100644 --- a/lib/components/commonFun.dart +++ b/lib/components/commonFun.dart @@ -6,8 +6,8 @@ import 'dart:math'; import 'package:ai_save_account/ai_save_account.dart'; import 'package:audioplayers/audio_cache.dart'; +import 'package:audioplayers/audioplayers.dart'; -// import 'package:audioplayers/audio_cache.dart'; import 'package:camera/camera.dart'; import 'package:convert/convert.dart'; import 'package:crypto/crypto.dart' as crypto; @@ -16,30 +16,49 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; -//import '../my_wechat_assets_picker_fix/my_asset_picker_1.dart'; import 'package:fluttertoast/fluttertoast.dart'; import 'package:hyzp_ybqx/provider/player_region.dart'; -// import 'package:just_audio/just_audio.dart'; import 'UserInfo.dart'; import 'dioFun.dart'; -// final myPlayer = AudioPlayer(); -final myPlayer = AudioCache(); - -// myPlayMp3({String asset = 'assets/audio/yinxiao1064.mp3'}) { -// // myPlayer.setAsset(asset, preload: true).then((value) { -// // myPlayer.play(); -// // }); -// // myPlayer.setAsset(asset).then((value) { -// // myPlayer.play(); -// // }); -// } +//////////////////////////////////////////// +AudioPlayer playerClick; +AudioPlayer playerClacks; +AudioPlayer playerVoiceRemind; + +myPlayClick() async { + if (null == playerClick) { + print("myPlayClick first by load mp3 file"); + playerClick = await AudioCache().play('audio/click.mp3'); + } else { + print("myPlayClick resume() from cache"); + playerClick.seek(Duration(milliseconds: 0)); + playerClick.resume(); + } +} -myPlayMp3({String asset = 'audio/语音提醒.mp3'}) { - myPlayer.play(asset); +myPlayClacks() async { + if (null == playerClick) { + print("myPlayClick first by load mp3 file"); + playerClick = await AudioCache().play('audio/clacks.mp3'); + } else { + print("myPlayClick resume() from cache"); + playerClick.seek(Duration(milliseconds: 0)); + playerClick.resume(); + } } +myPlayVoiceRemind() async { + if (null == playerVoiceRemind) { + print("myPlayVoiceRemind first by load mp3 file"); + playerVoiceRemind = await AudioCache().play('audio/语音提醒.mp3'); + } else { + print("myPlayVoiceRemind resume() from cache"); + playerVoiceRemind.seek(Duration(milliseconds: 0)); + playerVoiceRemind.resume(); + } +} //////////////////////////////////////////// // begin hyzp_ybqx-Commit022-区县切换新方法-OK @@ -133,7 +152,7 @@ Future doRemind() async { // print("播放:语音提醒.mp3"); if (listReviewed.length > 0) { // AudioCache().play(File('audio/语音提醒.mp3').path); //语音提醒 - myPlayMp3(asset: 'audio/语音提醒.mp3'); + myPlayVoiceRemind(); } } } diff --git a/lib/pages/Login/TakePictuer.dart b/lib/pages/Login/TakePictuer.dart index 132dd2d..e4941dd 100644 --- a/lib/pages/Login/TakePictuer.dart +++ b/lib/pages/Login/TakePictuer.dart @@ -57,7 +57,7 @@ class _TakePictuerState extends State { await Future.delayed(Duration(milliseconds: 1000), () { print('开始拍照...'); // AudioCache().play(File('audio/yinxiao1064.mp3').path); //播放咔嚓声 - myPlayMp3(asset: 'assets/audio/yinxiao1064.mp3'); //播放咔嚓声 + myPlayClacks(); //播放咔嚓声 onTakePictureButtonPressed(); }); } diff --git a/lib/pages/tabs/page7_setRemind.dart b/lib/pages/tabs/page7_setRemind.dart index 048241e..830fcf6 100644 --- a/lib/pages/tabs/page7_setRemind.dart +++ b/lib/pages/tabs/page7_setRemind.dart @@ -110,7 +110,7 @@ class _LoginPageState extends State { if (bVoiceRemind) { print("播放语音提醒"); // AudioCache().play(File('audio/语音提醒.mp3').path); //语音提醒 - myPlayMp3(asset: 'audio/语音提醒.mp3'); + myPlayVoiceRemind(); } getListView(); }); @@ -164,7 +164,7 @@ class _LoginPageState extends State { setRemindTimer(enable: g_bVoiceRemind); // AudioCache().play(File('audio/yinxiao1064.mp3').path); //音效提醒 - myPlayMp3(asset: 'assets/audio/yinxiao1064.mp3'); //音效提醒 + myPlayClacks(); //音效提醒 Navigator.pop(context); }, ), diff --git a/pubspec.yaml b/pubspec.yaml index 9fe459a..4066b53 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -100,16 +100,6 @@ dependencies: audioplayers: ^0.16.2 flutter_background_service: ^0.0.1+21 - # just_audio: ^0.4.0 # 报错 -# just_audio: ^0.3.4 # OK,不支持中文路径 - # just_audio: ^0.3.0 # OK - # just_audio: ^0.1.0 # OK - - # just_audio: ^0.6.15+1 # 引入该插件编译时报错如下 - # Could not determine the dependencies of task ':app:processDebugResources'. - # > Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'. - # > Could not resolve androidx.media2:media2-common:[1.1.0-alpha01]. - encrypt: ^4.1.0 device_info: ^1.0.0