Commit 258578de5687e23dee6ec7bc3f8422cdbe87aaab
1 parent
2a9895f6
feat:修复ios上退出应用失效问题
Showing
4 changed files
with
14 additions
and
4 deletions
lib/app/splash_page.dart
@@ -95,7 +95,7 @@ class _TransitionViewState extends State<TransitionView> { | @@ -95,7 +95,7 @@ class _TransitionViewState extends State<TransitionView> { | ||
95 | }, | 95 | }, |
96 | rightTap: () { | 96 | rightTap: () { |
97 | // 退出应用 | 97 | // 退出应用 |
98 | - SystemNavigator.pop(); | 98 | + AppConfigHelper.exitApp(); |
99 | }, | 99 | }, |
100 | ), | 100 | ), |
101 | ); | 101 | ); |
lib/common/core/app_config_helper.dart
@@ -2,6 +2,7 @@ import 'dart:ffi'; | @@ -2,6 +2,7 @@ import 'dart:ffi'; | ||
2 | import 'dart:io'; | 2 | import 'dart:io'; |
3 | 3 | ||
4 | import 'package:flutter/cupertino.dart'; | 4 | import 'package:flutter/cupertino.dart'; |
5 | +import 'package:flutter/services.dart'; | ||
5 | import 'package:package_info_plus/package_info_plus.dart'; | 6 | import 'package:package_info_plus/package_info_plus.dart'; |
6 | import 'package:wow_english/common/core/sp_const.dart'; | 7 | import 'package:wow_english/common/core/sp_const.dart'; |
7 | import 'package:wow_english/common/core/user_util.dart'; | 8 | import 'package:wow_english/common/core/user_util.dart'; |
@@ -55,4 +56,13 @@ class AppConfigHelper { | @@ -55,4 +56,13 @@ class AppConfigHelper { | ||
55 | static void _clearUserData() { | 56 | static void _clearUserData() { |
56 | SpUtil.getInstance().remove(SpConst.prefsKeyAgreementAccepted); | 57 | SpUtil.getInstance().remove(SpConst.prefsKeyAgreementAccepted); |
57 | } | 58 | } |
59 | + | ||
60 | + static void exitApp() { | ||
61 | + if (Platform.isIOS) { | ||
62 | + exit(0); | ||
63 | + } else { | ||
64 | + //此种方式在IOS上不生效 | ||
65 | + SystemNavigator.pop(); | ||
66 | + } | ||
67 | + } | ||
58 | } | 68 | } |
lib/common/permission/permissionRequestPage.dart
1 | import 'dart:io'; | 1 | import 'dart:io'; |
2 | import 'package:flutter/material.dart'; | 2 | import 'package:flutter/material.dart'; |
3 | -import 'package:flutter/services.dart'; | ||
4 | import 'package:permission_handler/permission_handler.dart'; | 3 | import 'package:permission_handler/permission_handler.dart'; |
4 | +import 'package:wow_english/common/core/app_config_helper.dart'; | ||
5 | 5 | ||
6 | import '../../utils/log_util.dart'; | 6 | import '../../utils/log_util.dart'; |
7 | 7 | ||
@@ -167,7 +167,7 @@ class _PermissionRequestPageState extends State<PermissionRequestPage> | @@ -167,7 +167,7 @@ class _PermissionRequestPageState extends State<PermissionRequestPage> | ||
167 | 167 | ||
168 | /// 退出应用程序 | 168 | /// 退出应用程序 |
169 | void _quitApp() { | 169 | void _quitApp() { |
170 | - SystemChannels.platform.invokeMethod("SystemNavigator.pop"); | 170 | + AppConfigHelper.exitApp(); |
171 | } | 171 | } |
172 | 172 | ||
173 | /// 关闭整个权限申请页面 | 173 | /// 关闭整个权限申请页面 |
lib/pages/moduleSelect/view.dart
@@ -188,7 +188,7 @@ class _HomePageView extends StatelessWidget { | @@ -188,7 +188,7 @@ class _HomePageView extends StatelessWidget { | ||
188 | onPressed: () => | 188 | onPressed: () => |
189 | { | 189 | { |
190 | if (forcedUpgrade) { | 190 | if (forcedUpgrade) { |
191 | - SystemNavigator.pop() | 191 | + AppConfigHelper.exitApp() |
192 | } else | 192 | } else |
193 | { | 193 | { |
194 | Navigator.of(context).pop() | 194 | Navigator.of(context).pop() |