diff --git a/lib/http/interceptor.dart b/lib/http/interceptor.dart index 8bcc889e..84f8190d 100644 --- a/lib/http/interceptor.dart +++ b/lib/http/interceptor.dart @@ -1,6 +1,6 @@ // ignore_for_file: avoid_print -import 'package:PiliPalaX/utils/utils.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:dio/dio.dart'; import 'package:flutter/material.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; @@ -76,8 +76,13 @@ class ApiInterceptor extends Interceptor { case DioExceptionType.sendTimeout: return '发送请求超时,请检查网络设置'; case DioExceptionType.unknown: - final String res = (await Utils.checkConnectivity()).title; + final String res = + (await Connectivity().checkConnectivity()).first.title; return '$res网络异常 ${error.error}'; } } } + +extension _ConnectivityResultExt on ConnectivityResult { + String get title => ['蓝牙', 'Wi-Fi', '局域', '流量', '无', '代理', '其他'][index]; +} diff --git a/lib/pages/video/detail/controller.dart b/lib/pages/video/detail/controller.dart index b3d23c8b..122864f2 100644 --- a/lib/pages/video/detail/controller.dart +++ b/lib/pages/video/detail/controller.dart @@ -1013,18 +1013,18 @@ class VideoDetailController extends GetxController // 视频链接 Future queryVideoUrl() async { if (cacheVideoQa == null) { - await Utils.checkConnectivity().then((res) { - cacheVideoQa = res == ConnectivityResult.mobile - ? setting.get(SettingBoxKey.defaultVideoQaCellular, - defaultValue: VideoQuality.high1080.code) - : setting.get(SettingBoxKey.defaultVideoQa, - defaultValue: VideoQuality.values.last.code); + await Connectivity().checkConnectivity().then((res) { + cacheVideoQa = res.contains(ConnectivityResult.wifi) + ? setting.get(SettingBoxKey.defaultVideoQa, + defaultValue: VideoQuality.values.last.code) + : setting.get(SettingBoxKey.defaultVideoQaCellular, + defaultValue: VideoQuality.high1080.code); - cacheAudioQa = res == ConnectivityResult.mobile - ? setting.get(SettingBoxKey.defaultAudioQaCellular, - defaultValue: AudioQuality.k192.code) - : setting.get(SettingBoxKey.defaultAudioQa, - defaultValue: AudioQuality.hiRes.code); + cacheAudioQa = res.contains(ConnectivityResult.wifi) + ? setting.get(SettingBoxKey.defaultAudioQa, + defaultValue: AudioQuality.hiRes.code) + : setting.get(SettingBoxKey.defaultAudioQaCellular, + defaultValue: AudioQuality.k192.code); }); } var result = await VideoHttp.videoUrl(cid: cid.value, bvid: bvid); diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index a5898d2c..eed1504b 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -17,7 +17,6 @@ import 'package:PiliPalaX/pages/video/detail/introduction/widgets/group_panel.da import 'package:PiliPalaX/utils/feed_back.dart'; import 'package:PiliPalaX/utils/login.dart'; import 'package:PiliPalaX/utils/storage.dart'; -import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:crypto/crypto.dart'; import 'package:device_info_plus/device_info_plus.dart'; import 'package:flutter/material.dart'; @@ -31,17 +30,9 @@ import 'package:flutter_inappwebview/flutter_inappwebview.dart' as web; import 'package:html/dom.dart' as dom; import 'package:html/parser.dart' as html_parser; -extension ConnectivityResultExt on ConnectivityResult { - String get title => ['蓝牙', 'Wi-Fi', '局域', '流量', '无', '代理', '其他'][index]; -} - class Utils { static final Random random = Random(); - static Future checkConnectivity() async { - return (await Connectivity().checkConnectivity()).first; - } - static Future getWwebid(mid) async { try { dynamic response =