Преглед на файлове

[modify]增加打开浏览器检查功能

zk преди 1 година
родител
ревизия
d5b3cd05c3
променени са 3 файла, в които са добавени 233 реда и са изтрити 224 реда
  1. 6 1
      lib/dialog/show_update_version_dialog.dart
  2. 6 2
      lib/utils/launcher_url_util.dart
  3. 221 221
      pubspec.lock

+ 6 - 1
lib/dialog/show_update_version_dialog.dart

@@ -8,6 +8,7 @@ import 'package:electronic_assistant/resource/colors.gen.dart';
 import 'package:electronic_assistant/utils/common_style.dart';
 import 'package:electronic_assistant/utils/expand.dart';
 import 'package:electronic_assistant/utils/mmkv_util.dart';
+import 'package:electronic_assistant/utils/toast_util.dart';
 import 'package:flutter/cupertino.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_screenutil/flutter_screenutil.dart';
@@ -173,7 +174,11 @@ class UpdateVersionDialog {
       if (url == null) {
         return;
       }
-      LauncherUrlUtil.launchHttpUrl(url);
+      try {
+        LauncherUrlUtil.launchHttpUrl(url);
+      } catch (e) {
+        ToastUtil.showToast('更新失败');
+      }
     } else if (Platform.isIOS) {
       //TODO ios 跳转苹果商店下载
     }

+ 6 - 2
lib/utils/launcher_url_util.dart

@@ -3,7 +3,11 @@ import 'package:url_launcher/url_launcher.dart';
 class LauncherUrlUtil {
   LauncherUrlUtil._();
 
-  static void launchHttpUrl(String url) {
-    launchUrl(Uri.parse(url));
+  static Future<void> launchHttpUrl(String url) async {
+    final uri = Uri.parse(url);
+    if (!await canLaunchUrl(uri)) {
+      throw Exception('Could not launch $url');
+    }
+    launchUrl(uri);
   }
 }

Файловите разлики са ограничени, защото са твърде много
+ 221 - 221
pubspec.lock