hyzp_ybqx-Commit113:版本号更新为1.4.23+20220405。已实现启动App时查询是否存在待审核黑烟车记录,有便播放语言提醒,安装App后默认开启,启用时播放一次语音提醒。用户可以启用或关闭该功能。保证从后台唤醒时,能够及时正确更新“待审提醒”选择状态。
This commit is contained in:
@@ -1,7 +1,11 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:badges/badges.dart';
|
||||
import 'package:disable_screenshots/disable_screenshots.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:hyzp_ybqx/components/dioFun.dart';
|
||||
import 'package:hyzp_ybqx/components/hyxx_data_handle.dart';
|
||||
import 'package:hyzp_ybqx/pages/tabs/page4_myMsics_new.dart';
|
||||
|
||||
//import '../../widget/player_pro.dart';
|
||||
@@ -10,6 +14,7 @@ import '../../components/commonFun.dart';
|
||||
import '../../services/ServiceLocator.dart';
|
||||
import '../../services/Storage.dart';
|
||||
import 'page1_work.dart';
|
||||
import 'package:audioplayers/audio_cache.dart';
|
||||
|
||||
class Tabs extends StatefulWidget {
|
||||
Tabs({Key key, this.arguments = 0}) : super(key: key);
|
||||
@@ -70,6 +75,28 @@ class _TabsState extends State<Tabs> {
|
||||
bPreLoading = false;
|
||||
bLoginVerify = false; //处理延时登录,判断用户名登录是否验证通过
|
||||
});
|
||||
|
||||
init();
|
||||
}
|
||||
|
||||
init() async {
|
||||
// // 从磁盘读取变量
|
||||
// g_bVoiceRemind = await Storage.getBool('bVoiceRemind');
|
||||
// g_bVoiceRemind = (null == g_bVoiceRemind) ? false : g_bVoiceRemind;
|
||||
// // print('g_bVoiceRemind = $g_bVoiceRemind');
|
||||
// eventBus.fire(VoiceRemindUpdate('g_bVoiceRemind 数据已更新'));
|
||||
|
||||
// 获取待审核黑烟车记录
|
||||
listReviewed.clear();
|
||||
await getReviewedList();
|
||||
print("listReviewed = $listReviewed");
|
||||
if (g_bVoiceRemind && listReviewed.length > 0) {
|
||||
// if (g_bVoiceRemind) {
|
||||
// import 'dart:io';
|
||||
// import 'package:audioplayers/audio_cache.dart';
|
||||
// print("播放:语音提醒.mp3");
|
||||
AudioCache().play(File('audio/语音提醒.mp3').path); //语音提醒
|
||||
}
|
||||
}
|
||||
|
||||
double _activeIconWidth = 68;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:audioplayers/audio_cache.dart';
|
||||
import 'package:badges/badges.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
@@ -14,6 +15,7 @@ import 'package:hyzp_ybqx/pages/Works/DWDT/dwInfo_data.dart';
|
||||
import 'package:hyzp_ybqx/pages/Works/TJXX/tj_data.dart';
|
||||
import 'package:hyzp_ybqx/pages/tabs/page5_userManager.dart';
|
||||
import 'package:hyzp_ybqx/pages/tabs/page6_download.dart';
|
||||
import 'package:hyzp_ybqx/services/EventBus.dart';
|
||||
import 'package:hyzp_ybqx/widget/JdButton.dart';
|
||||
import 'package:package_info/package_info.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
@@ -82,6 +84,14 @@ class _Page4_MyMsicsNewState extends State<Page4_MyMsicsNew>
|
||||
|
||||
getListView();
|
||||
|
||||
//监听 g_bVoiceRemind 更新事件
|
||||
eventBus.on<VoiceRemindUpdate>().listen((event) async {
|
||||
print(event.str + ", g_bVoiceRemind = $g_bVoiceRemind");
|
||||
setState(() {
|
||||
getListView();
|
||||
});
|
||||
});
|
||||
|
||||
super.initState();
|
||||
}
|
||||
|
||||
@@ -99,33 +109,38 @@ class _Page4_MyMsicsNewState extends State<Page4_MyMsicsNew>
|
||||
//自定义方法
|
||||
static onNullFun() {}
|
||||
|
||||
Widget _getListTile(title,
|
||||
{String leadPath = '',
|
||||
Color leadColor,
|
||||
onTapFun = onNullFun,
|
||||
onLongPressFun = onNullFun,
|
||||
size = 16.0,
|
||||
bool bBadge = false}) {
|
||||
Widget _getListTile(
|
||||
title, {
|
||||
String leadPath = '',
|
||||
Color leadColor,
|
||||
Color textColor,
|
||||
onTapFun = onNullFun,
|
||||
onLongPressFun = onNullFun,
|
||||
size = 16.0,
|
||||
bool bBadge = false,
|
||||
Widget trailWidget = const Icon(Icons.arrow_forward_ios),
|
||||
}) {
|
||||
// print("_getListTile bVoiceRemind = $bVoiceRemind"); // _getListTile bVoiceRemind = false
|
||||
return Column(
|
||||
children: <Widget>[
|
||||
ListTile(
|
||||
leading: bBadge
|
||||
? Badge(
|
||||
position: BadgePosition.topEnd(top: -7, end: -12),
|
||||
badgeContent: null,
|
||||
child: Image.asset(
|
||||
leadPath,
|
||||
height: ScreenUtil().setHeight(78),
|
||||
fit: BoxFit.fitHeight,
|
||||
),
|
||||
)
|
||||
position: BadgePosition.topEnd(top: -7, end: -12),
|
||||
badgeContent: null,
|
||||
child: Image.asset(
|
||||
leadPath,
|
||||
height: ScreenUtil().setHeight(78),
|
||||
fit: BoxFit.fitHeight,
|
||||
),
|
||||
)
|
||||
: Image.asset(
|
||||
leadPath,
|
||||
height: ScreenUtil().setHeight(78),
|
||||
fit: BoxFit.fitHeight,
|
||||
),
|
||||
title: new Text(title, style: TextStyle(fontSize: size)),
|
||||
trailing: new Icon(Icons.arrow_forward_ios),
|
||||
leadPath,
|
||||
height: ScreenUtil().setHeight(78),
|
||||
fit: BoxFit.fitHeight,
|
||||
),
|
||||
title: Text(title, style: TextStyle(fontSize: size, color: textColor)),
|
||||
trailing: trailWidget,
|
||||
contentPadding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 0),
|
||||
enabled: true,
|
||||
onTap: onTapFun,
|
||||
@@ -197,6 +212,14 @@ class _Page4_MyMsicsNewState extends State<Page4_MyMsicsNew>
|
||||
leadColor: _deepBlueColor,
|
||||
onTapFun: OnTap_download,
|
||||
bBadge: bNewVer),
|
||||
_getListTile('待审提醒',
|
||||
leadPath: 'assets/images/语音提醒.png',
|
||||
leadColor: _deepGreyColor,
|
||||
textColor: g_bVoiceRemind ? Colors.blue : null,
|
||||
onTapFun: OnTap_Remind,
|
||||
trailWidget: g_bVoiceRemind
|
||||
? Icon(Icons.check_box, color: Colors.blue)
|
||||
: Icon(Icons.check_box_outline_blank, color: Colors.blueAccent)),
|
||||
_getListTile('关于',
|
||||
leadPath: 'assets/images/关于.png', leadColor: _deepBlueColor, onTapFun: OnTap_MyAbout)
|
||||
|
||||
@@ -414,6 +437,18 @@ class _Page4_MyMsicsNewState extends State<Page4_MyMsicsNew>
|
||||
);
|
||||
}
|
||||
|
||||
OnTap_Remind() {
|
||||
setState(() {
|
||||
g_bVoiceRemind = !g_bVoiceRemind;
|
||||
print("bVoiceRemind = $g_bVoiceRemind");
|
||||
Storage.setBool('bVoiceRemind', g_bVoiceRemind);
|
||||
if (g_bVoiceRemind) {
|
||||
AudioCache().play(File('audio/语音提醒.mp3').path); //语音提醒
|
||||
}
|
||||
getListView();
|
||||
});
|
||||
}
|
||||
|
||||
OnTap_MyAbout() {
|
||||
PackageInfo.fromPlatform().then((PackageInfo packageInfo) {
|
||||
String appName = packageInfo.appName;
|
||||
|
||||
Reference in New Issue
Block a user