From 20ff09c9d5d289099752dcd6f1c3607cae759003 Mon Sep 17 00:00:00 2001 From: CYH <13923927013@163.com> Date: Thu, 9 Jan 2025 16:10:28 +0800 Subject: [PATCH] =?UTF-8?q?2.3.8=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- circle_app/ios/Runner/Info.plist | 2 +- circle_app/lib/circle_app/circle/logic.dart | 57 ++++++++++---- circle_app/lib/circle_app/circle/view.dart | 10 +-- .../circle_app/circle/widgets/discover.dart | 14 +++- .../circle_app/circle/widgets/new_people.dart | 14 ++-- .../circle_app/circle/widgets/vicinity.dart | 2 + .../dialog/ScreenBottomSheetDialog.dart | 74 +++++++++++-------- circle_app/lib/circle_app/quick/logic.dart | 37 ++++++++-- circle_app/lib/circle_app/quick/view.dart | 7 +- circle_app/lib/circle_app/splash/logic.dart | 2 +- circle_app/lib/net/api.dart | 2 +- circle_app/lib/net/dio_manager.dart | 16 +++- circle_app/pubspec.lock | 12 ++- circle_app/pubspec.yaml | 4 +- 14 files changed, 178 insertions(+), 75 deletions(-) diff --git a/circle_app/ios/Runner/Info.plist b/circle_app/ios/Runner/Info.plist index fe73129..4f230df 100644 --- a/circle_app/ios/Runner/Info.plist +++ b/circle_app/ios/Runner/Info.plist @@ -19,7 +19,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.3.3 + 2.3.7 CFBundleSignature ???? CFBundleURLTypes diff --git a/circle_app/lib/circle_app/circle/logic.dart b/circle_app/lib/circle_app/circle/logic.dart index de3dd14..5fc8c23 100644 --- a/circle_app/lib/circle_app/circle/logic.dart +++ b/circle_app/lib/circle_app/circle/logic.dart @@ -38,8 +38,8 @@ class CircleLogic extends GetxController { SwiperController swiperController = SwiperController(); final RefreshController refreshController = RefreshController(); final RefreshController peopleRefreshController = RefreshController(); - - +final ScrollController nearScrollController = ScrollController(); + ScrollController newscrollController = ScrollController(); HomeLogic homeLogic = Get.find(); late RefreshManager newPeopleManager; @@ -561,9 +561,9 @@ class CircleLogic extends GetxController { loadNearbyInfo(); } - if (vicinityPage == 1) { + // if (vicinityPage == 1) { refreshController.refreshCompleted(); - } + // } try { if (vicinityPage == 1) { @@ -586,8 +586,8 @@ class CircleLogic extends GetxController { refreshController.loadComplete(); } else { isLoadNearByList = false; - // refreshController.loadComplete(); - getNearByList(); + refreshController.loadComplete(); + // getNearByList(); return; } } @@ -607,10 +607,17 @@ class CircleLogic extends GetxController { } } else if (bean.code == 21201) { showOKToast(bean.msg); - if (vicinityPage == 1) { + // if (vicinityPage == 1) { showVipDialog('nearby_list'); - } - myVip = 0; + roleList.forEach((element) { + element.isSelect = false; + }); + + orientationList.forEach((element) { + element.isSelect = false; + }); + refreshController.refreshCompleted(); + // } refreshController.loadComplete(); update(); } else if (bean.code == 404 || bean.code == 500) { @@ -694,6 +701,7 @@ class CircleLogic extends GetxController { if (pageIndex == 1) { chargeNewPeopleType = data['data']['chargeType']; chargeNewPeopleFreeNum = data['data']['chargeFreeNum']; + newPeopleList.clear(); } List list = data['data']['users']; @@ -719,6 +727,24 @@ class CircleLogic extends GetxController { isNewPeopleMore = false; } update(); + } else if (data['code'] == 21201) { + showOKToast(data['msg']); + // if (pageIndex == 1) { + new_roleList.forEach((element) { + element.isSelect = false; + }); + new_orientationList.forEach((element) { + element.isSelect = false; + }); + showVipDialog('new_list'); + // } + if (peopleRefreshController.headerStatus == RefreshStatus.refreshing) { + peopleRefreshController.refreshCompleted(); + } + if (peopleRefreshController.footerStatus == LoadStatus.loading) { + peopleRefreshController.loadComplete(); + } + update(); } else if (data['code'] == 404 || data['code'] == 500) { isLoadFail = true; if (peopleRefreshController.headerStatus == RefreshStatus.refreshing) { @@ -732,6 +758,7 @@ class CircleLogic extends GetxController { } else { isNewPeopleMore = false; } + return data['code']; } void loadRecommendCircleFriendData() async { @@ -818,13 +845,17 @@ class CircleLogic extends GetxController { void onRefresh() async { + int lastPage = pageIndex; pageIndex = 1; - newPeopleList.clear(); - + // newPeopleList.clear(); + newscrollController.jumpTo(0); isNewPeopleMore = true; - peopleRefreshController.resetNoData(); + // peopleRefreshController.resetNoData(); update(); - getNewPeopleListData(); + int code = await getNewPeopleListData(); + if (code != 200) { + pageIndex = lastPage; + } } void onLoading() async { diff --git a/circle_app/lib/circle_app/circle/view.dart b/circle_app/lib/circle_app/circle/view.dart index de9fad2..7854386 100644 --- a/circle_app/lib/circle_app/circle/view.dart +++ b/circle_app/lib/circle_app/circle/view.dart @@ -117,7 +117,7 @@ class _CirclePageState extends State margin: EdgeInsets.only(top: 45.sp), child: TabBarView( controller: _tabController, - children: [NewPeople(), Vicinity(controller), Discover(0)], + children: [NewPeople(logic:controller), Vicinity(controller), Discover(0)], ), ), if (logic.callList.isNotEmpty && _tabController.index == 1) @@ -213,6 +213,7 @@ class _CirclePageState extends State onLoading: _onLoading, enablePullUp: logic.myVip > 0, child: ListView.builder( + controller: logic.nearScrollController, padding: EdgeInsets.all(10.sp), itemCount: logic.myVip == 0 ? logic.vicinityList.length + 2 @@ -540,8 +541,7 @@ class _CirclePageState extends State void _onRefresh() async { logic.vicinityPage = 1; logic.offset = 0; - logic.vicinityList.clear(); - logic.update(); + logic.nearScrollController.jumpTo(0); logic.loadNearbyInfo(); logic.getNearByList(); @@ -1016,7 +1016,7 @@ class _CirclePageState extends State callback: (genderList, orientationList, roleList, status) { if (_tabController.index == 1) { EventBusManager.fire(NearScrollTap()); - _onRefresh(); + logic.refreshController.requestRefresh(); } else if (_tabController.index == 0) { List genders = []; logic.new_genderList.forEach((element) { @@ -1033,7 +1033,7 @@ class _CirclePageState extends State logic.new_roleList.forEach((element) { if (element.isSelect) orientations.add(element.id); }); - logic.onRefresh(); + logic.peopleRefreshController.requestRefresh(); } else { List genders = []; logic.dis_genderList.forEach((element) { diff --git a/circle_app/lib/circle_app/circle/widgets/discover.dart b/circle_app/lib/circle_app/circle/widgets/discover.dart index bde17dd..81a74e4 100644 --- a/circle_app/lib/circle_app/circle/widgets/discover.dart +++ b/circle_app/lib/circle_app/circle/widgets/discover.dart @@ -385,13 +385,16 @@ class _DiscoverState extends State if (mounted) { setState(() {}); if (isLoadMore) { - isLoadMore = false; - lastPage = lastPage + 1; - animateToOffset( - _scrollController, lastPage * (screenHeight + 5.sp), () {}); + Future.delayed(Duration(milliseconds: 250),() { + isLoadMore = false; + lastPage = lastPage + 1; + animateToOffset( + _scrollController, lastPage * (screenHeight + 5.sp), () {}); + }); } } } else { + isLoadMore = false; loadFail = true; isMore = false; showOKToast(data['msg']); @@ -408,12 +411,15 @@ class _DiscoverState extends State } void refreshData() { + if (refreshController.headerStatus == RefreshStatus.refreshing) return; index = 1; loadFail = false; loadData(); } _onLoading() { + if (isLoadMore) return; + // if (refreshController.footerStatus == LoadStatus.loading) return; isLoadMore = true; loadData(); } diff --git a/circle_app/lib/circle_app/circle/widgets/new_people.dart b/circle_app/lib/circle_app/circle/widgets/new_people.dart index d3ba793..931e93e 100644 --- a/circle_app/lib/circle_app/circle/widgets/new_people.dart +++ b/circle_app/lib/circle_app/circle/widgets/new_people.dart @@ -17,6 +17,9 @@ import '../../userinfo/view.dart'; import 'dart:ui' as ui show PlaceholderAlignment; class NewPeople extends StatefulWidget { + CircleLogic logic; + + NewPeople({super.key,required this.logic}); @override _NewPeopleState createState() => new _NewPeopleState(); } @@ -24,9 +27,9 @@ class NewPeople extends StatefulWidget { class _NewPeopleState extends State { // TODO: add state variables and methods - CircleLogic logic = Get.find(); + late CircleLogic logic; var sub; - ScrollController _scrollController = ScrollController(); + double maxOff = 0; @override @@ -35,6 +38,7 @@ class _NewPeopleState extends State { void initState() { // TODO: implement initState super.initState(); + logic = widget.logic; logic.newPeopleManager = RefreshManager( refreshInterval: 5 * 60, pageType: '新人', @@ -49,7 +53,7 @@ class _NewPeopleState extends State { logic.loadNerPeopleRouteStatus(); } sub = EventBusManager.on().listen((event) { - _scrollController.animateTo(0, + logic.newscrollController.animateTo(0, duration: const Duration(milliseconds: 300), curve: Curves.easeInOut); }); } @@ -58,7 +62,7 @@ class _NewPeopleState extends State { void dispose() { // TODO: implement dispose super.dispose(); - _scrollController.dispose(); + logic.newscrollController.dispose(); sub.cancel(); } @@ -77,7 +81,7 @@ class _NewPeopleState extends State { onLoading: logic.onLoading, enablePullUp: true, child: ListView.builder( - controller: _scrollController, + controller: logic.newscrollController, padding: EdgeInsets.only(left: 10.sp, right: 10.sp), itemCount: logic.newPeopleList.length, itemBuilder: (context, index) { diff --git a/circle_app/lib/circle_app/circle/widgets/vicinity.dart b/circle_app/lib/circle_app/circle/widgets/vicinity.dart index fff1ebf..b470770 100644 --- a/circle_app/lib/circle_app/circle/widgets/vicinity.dart +++ b/circle_app/lib/circle_app/circle/widgets/vicinity.dart @@ -728,6 +728,7 @@ class _VicinityState extends State return Text( text, + maxLines: 1, style: TextStyle( color: Colors.white, fontSize: 13.sp), @@ -869,6 +870,7 @@ class _VicinityState extends State return Text( text, + maxLines: 1, style: TextStyle( color: Colors.white, fontSize: 13.sp), diff --git a/circle_app/lib/circle_app/dialog/ScreenBottomSheetDialog.dart b/circle_app/lib/circle_app/dialog/ScreenBottomSheetDialog.dart index fd9ff74..a8a6dec 100644 --- a/circle_app/lib/circle_app/dialog/ScreenBottomSheetDialog.dart +++ b/circle_app/lib/circle_app/dialog/ScreenBottomSheetDialog.dart @@ -24,9 +24,9 @@ typedef void ScreenCallback(List genderList,List orientationList,List< class ScreenBottomSheetDialog extends StatefulWidget { final List genderList ; - final List orientationList ; + List orientationList ; - final List roleList ; + List roleList ; final ScreenCallback callback; bool? isShowAutoSwitch; final bool isHaveCity; @@ -55,6 +55,8 @@ class _ScreenBottomSheetDialogState extends State { List roleList = [] ; + bool isShowAutoSwitch = false; + @override void initState() { // TODO: implement initState @@ -65,6 +67,7 @@ class _ScreenBottomSheetDialogState extends State { var logic = Get.find(); locationCity = logic.cityName; } + isShowAutoSwitch = widget.isShowAutoSwitch ?? false; initGerder(); } StreamSubscription? subscription = null; @@ -149,15 +152,15 @@ class _ScreenBottomSheetDialogState extends State { } List roles = []; - widget.orientationList.forEach((element) { + orientationList.forEach((element) { if (element.isSelect) roles.add(element.id); }); List orientations = []; - widget.roleList.forEach((element) { + roleList.forEach((element) { if (element.isSelect) orientations.add(element.id); }); - + if (widget.isHaveCity) { var result = await DioManager.instance.postBody(url: Api.nearbyCanSearch,params: {'orientations':roles,'roles':orientations}); int code = result['code']; @@ -166,14 +169,25 @@ class _ScreenBottomSheetDialogState extends State { // LIMIT_YEAR_VIP(21202, "功能限制,开启年VIP后再进行使用"), showOKToast(result['msg']); if (code == 21201) { + widget.roleList.forEach((element) { + element.isSelect = false; + }); + widget.orientationList.forEach((element) { + element.isSelect = false; + }); showRechargeDialog('nearby_search'); } else if (code == 21202) { showRechargeDialog(isYear: true,'nearby_search'); + widget.roleList == roleList; + widget.orientationList = orientationList; } return; + } else if (code == 200) { + widget.roleList == roleList; + widget.orientationList = orientationList; } } else { - var result = await DioManager.instance.postBody(url: Api.nfindPageCanSearch,params: {'orientations':roles,'roles':orientations}); + var result = await DioManager.instance.postBody(url: Api.findPageCanSearch,params: {'orientations':roles,'roles':orientations}); int code = result['code']; if (code != 200) { // LIMIT_VIP(21201, "功能限制,开启VIP后再进行使用"), @@ -331,10 +345,10 @@ class _ScreenBottomSheetDialogState extends State { height: 23.sp, margin: EdgeInsets.only(left: 18.sp,top: 6.sp), child: ListView.builder( - itemCount: widget.roleList.length, + itemCount: roleList.length, scrollDirection: Axis.horizontal, itemBuilder: (context, index) { - final isSelected = widget.roleList[index] + final isSelected = roleList[index] .isSelect; // Replace with your condition return GestureDetector( @@ -345,32 +359,32 @@ class _ScreenBottomSheetDialogState extends State { // return; // } if (index == 0) { - if (widget.roleList[0].isSelect) { - widget.roleList.forEach((element) { + if (roleList[0].isSelect) { + roleList.forEach((element) { print(element.name); element.isSelect = false; }); } else { - widget.roleList.forEach((element) { + roleList.forEach((element) { element.isSelect = true; }); } } else { - if (widget.roleList[index].isSelect) { - widget.roleList[index].isSelect = false; - widget.roleList[0].isSelect = false; + if (roleList[index].isSelect) { + roleList[index].isSelect = false; + roleList[0].isSelect = false; } else { - widget.roleList[index].isSelect = true; + roleList[index].isSelect = true; bool istrue = true; - widget.roleList.asMap().forEach((index,element) { + roleList.asMap().forEach((index,element) { if(index!=0&&!element.isSelect) { // print(element.isSelect); istrue = false; } }); - widget.roleList[0].isSelect = istrue; + roleList[0].isSelect = istrue; } } @@ -410,7 +424,7 @@ class _ScreenBottomSheetDialogState extends State { ), child: Center( child: Text( - widget.roleList[index].name, + roleList[index].name, style: TextStyle( fontSize: 13.0, color: Colors.white, @@ -456,10 +470,10 @@ class _ScreenBottomSheetDialogState extends State { height: 23.sp, margin: EdgeInsets.only(left: 18.sp,top: 6.sp), child: ListView.builder( - itemCount: widget.orientationList.length, + itemCount: orientationList.length, scrollDirection: Axis.horizontal, itemBuilder: (context, index) { - final isSelected = widget.orientationList[index] + final isSelected = orientationList[index] .isSelect; // Replace with your condition return GestureDetector( @@ -471,32 +485,32 @@ class _ScreenBottomSheetDialogState extends State { // } if (index == 0) { - if (widget.orientationList[0].isSelect) { - widget.orientationList.forEach((element) { + if (orientationList[0].isSelect) { + orientationList.forEach((element) { print(element.name); element.isSelect = false; }); } else { - widget.orientationList.forEach((element) { + orientationList.forEach((element) { element.isSelect = true; }); } } else { - if (widget.orientationList[index].isSelect) { - widget.orientationList[index].isSelect = false; - widget.orientationList[0].isSelect = false; + if (orientationList[index].isSelect) { + orientationList[index].isSelect = false; + orientationList[0].isSelect = false; } else { - widget.orientationList[index].isSelect = true; + orientationList[index].isSelect = true; bool istrue = true; - widget.orientationList.asMap().forEach((index,element) { + orientationList.asMap().forEach((index,element) { if(index!=0&&!element.isSelect) { // print(element.isSelect); istrue = false; } }); - widget.orientationList[0].isSelect = istrue; + orientationList[0].isSelect = istrue; } } @@ -536,7 +550,7 @@ class _ScreenBottomSheetDialogState extends State { ), child: Center( child: Text( - widget.orientationList[index].name, + orientationList[index].name, style: TextStyle( fontSize: 13.0, color: Colors.white, diff --git a/circle_app/lib/circle_app/quick/logic.dart b/circle_app/lib/circle_app/quick/logic.dart index c6e4d1c..f21594d 100644 --- a/circle_app/lib/circle_app/quick/logic.dart +++ b/circle_app/lib/circle_app/quick/logic.dart @@ -21,6 +21,8 @@ class QuickLogic extends GetxController { final RefreshController refreshController = RefreshController(); List genderList = [MyConfigData('0', '全部', true)]; + + List locationGenderList = [MyConfigData('0', '全部', true)]; List lists = []; List lists1 = []; int page = 1; @@ -30,6 +32,8 @@ class QuickLogic extends GetxController { bool isLoad = true; bool isLoad1 = true; + bool isLoadFail = false; + bool isMore = true; bool isMore1 = true; @@ -94,19 +98,31 @@ class QuickLogic extends GetxController { configBean.genderMap.forEach((key, value) { if (int.parse(key) < 3) { genderList.add(MyConfigData(key, value, true)); + locationGenderList.add(MyConfigData(key, value, true)); + } }); genderList.add(MyConfigData('-1', '非二元', true)); + locationGenderList.add(MyConfigData('-1', '非二元', true)); } } initList(int type) async { List wantMeet = []; - genderList.forEach((element) { - if (element.isSelect && element.id != '0') { - wantMeet.add(element.id); - } - }); + if (type == 1) { + genderList.forEach((element) { + if (element.isSelect && element.id != '0') { + wantMeet.add(element.id); + } + }); + } else { + locationGenderList.forEach((element) { + if (element.isSelect && element.id != '0') { + wantMeet.add(element.id); + } + }); + } + var data = await DioManager.instance.post(url: Api.queryQuickChatUserV2, params: { 'page': type == 1 ? page : page1, @@ -117,13 +133,14 @@ class QuickLogic extends GetxController { "lng": position?.longitude ?? 0, }); if (data['code'] == 200) { + refreshController.refreshCompleted(); if (type == 1) { List list = data['data']['lists']; if (list.isNotEmpty) { isLoad = false; if (page == 1) { - refreshController.refreshCompleted(); + refreshController.loadComplete(); lists = list; } else { @@ -189,6 +206,10 @@ class QuickLogic extends GetxController { } } else if (data['code'] == 21201) { showOepnVipDialog(''); + } else if (data['code'] == 404 || data['code'] == 500) { + if (lists.isEmpty) { + isLoadFail = true; + } } update(); } @@ -197,7 +218,7 @@ class QuickLogic extends GetxController { if (type == 1) { page = 1; } else { - page = 2; + page1 = 1; } initList(type); @@ -209,7 +230,7 @@ class QuickLogic extends GetxController { backgroundColor: Colors.transparent, builder: (BuildContext context) { return ScreenBottomSheetDialog( - genderList: genderList, + genderList: currentIndex == 0 ? genderList : locationGenderList, orientationList: [], roleList: [], isHaveCity: false, diff --git a/circle_app/lib/circle_app/quick/view.dart b/circle_app/lib/circle_app/quick/view.dart index 2e10bc4..cb2f6bf 100644 --- a/circle_app/lib/circle_app/quick/view.dart +++ b/circle_app/lib/circle_app/quick/view.dart @@ -130,7 +130,12 @@ class _QuickPageState extends State ), ), body: SafeArea( - child: logic.isLoad + child: logic.isLoadFail + ? noResultWidget(tip: '加载失败,请重新加载',callBack: () { + logic.isLoad = true; + logic.update(); + logic.initList(1); + }) : logic.isLoad ? loaddingWidget(true) : logic.lists.isEmpty ? noResultWidget() diff --git a/circle_app/lib/circle_app/splash/logic.dart b/circle_app/lib/circle_app/splash/logic.dart index 5f03296..d9f87bf 100644 --- a/circle_app/lib/circle_app/splash/logic.dart +++ b/circle_app/lib/circle_app/splash/logic.dart @@ -38,7 +38,7 @@ class SplashLogic extends GetxController { void onClose() { // TODO: implement onClose super.onClose(); - DioManager.getInstance().setDioTimeOut(10000); + DioManager.getInstance().setDioTimeOut(15000); } diff --git a/circle_app/lib/net/api.dart b/circle_app/lib/net/api.dart index 0cd074b..5e6ba96 100644 --- a/circle_app/lib/net/api.dart +++ b/circle_app/lib/net/api.dart @@ -539,7 +539,7 @@ class Api { static var nearbyCanSearch = '/user-service/nearby/search/need/vip'; //精选筛选是否需要会员 - static var nfindPageCanSearch = '/user-service/findPage/search/need/vip'; + static var findPageCanSearch = '/user-service/findPage/search/need/vip'; //申请创建 static var interestApplyToCreate = '/up-service/interest/applyToCreate'; diff --git a/circle_app/lib/net/dio_manager.dart b/circle_app/lib/net/dio_manager.dart index ce8a072..16417bb 100644 --- a/circle_app/lib/net/dio_manager.dart +++ b/circle_app/lib/net/dio_manager.dart @@ -4,6 +4,7 @@ import 'dart:math'; import 'package:circle_app/router/routers.dart'; import 'package:circle_app/utils/util.dart'; import 'package:dio/dio.dart'; +import 'package:flutter_bugly/flutter_bugly.dart'; import '../utils/SharedPreferencesHelper.dart'; import '../utils/device.dart'; @@ -43,9 +44,9 @@ class DioManager { // Api.testBaseUrl, Api.baseUrl1, // 连接服务器超时时间,单位是毫秒 - connectTimeout: const Duration(seconds: 10), + connectTimeout: const Duration(seconds: 15), // 接收数据的最长时限 - receiveTimeout: const Duration(seconds: 10), + receiveTimeout: const Duration(seconds: 15), )); _dio!.interceptors.add(LogInterceptor( responseBody: true, @@ -308,12 +309,23 @@ class DioManager { if (sp.getString(SharedPreferencesHelper.LOGINPHONE) == '18800000100') { return {'code': 500, 'msg': ''}; } + // 其他类型的错误(如协议错误、解析错误等) + var info = await FlutterBugly.uploadException( + message: url + e.error.toString(), + detail: Platform.isIOS ? 'crash_attach.log' : 'extraMessage.txt', + ); + print(info); return {'code': 500, 'msg': '服务器开小差了,请重试'}; } catch (e) { SharedPreferencesHelper sp = await SharedPreferencesHelper.getInstance(); if (sp.getString(SharedPreferencesHelper.LOGINPHONE) == '18800000100') { return {'code': 500, 'msg': ''}; } + // 其他类型的错误(如协议错误、解析错误等) + var info = await FlutterBugly.uploadException( + message: url + e.toString(), + detail: Platform.isIOS ? 'crash_attach.log' : 'extraMessage.txt', + ); // 其他一些意外的报错 return {'code': 500, 'msg': '加载中...'}; } diff --git a/circle_app/pubspec.lock b/circle_app/pubspec.lock index e026733..e2327a7 100644 --- a/circle_app/pubspec.lock +++ b/circle_app/pubspec.lock @@ -45,10 +45,10 @@ packages: dependency: "direct main" description: name: app_settings - sha256: "2ec421f375d747916c4c0193933567074ea60c4f01c4a68642f07fef1002524e" + sha256: e6a34735d4ddb24ca9c5fd7e965ec65c8b611cbd3a329152c294f9e9f4bacb33 url: "https://pub.flutter-io.cn" source: hosted - version: "4.0.4" + version: "4.3.1" archive: dependency: transitive description: @@ -630,6 +630,14 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "1.1.3" + flutter_install_app: + dependency: "direct main" + description: + name: flutter_install_app + sha256: "9b117006d17c900e671c26bcbc9b15c7b8efd15d6f9b4442ad5d576de20fab53" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.0" flutter_intl: dependency: "direct main" description: diff --git a/circle_app/pubspec.yaml b/circle_app/pubspec.yaml index 06e639c..9414514 100644 --- a/circle_app/pubspec.yaml +++ b/circle_app/pubspec.yaml @@ -92,7 +92,7 @@ dependencies: fluwx: ^3.8.1+1 event_bus: ^2.0.0 #安装apk -# flutter_install_app: 1.3.0 + flutter_install_app: 1.3.0 #闪屏页 flutter_native_splash: 2.2.16 #腾讯离线推送 @@ -114,7 +114,7 @@ dependencies: #边框渐变 gradient_borders: ^1.0.0 #系统设置 安卓4.3.1 苹果4.0.4 - app_settings: 4.0.4 + app_settings: 4.3.1 #通知权限 notification_permissions: ^0.6.1 #分帧