Commit 258578de5687e23dee6ec7bc3f8422cdbe87aaab

Authored by 吴启风
1 parent 2a9895f6

feat:修复ios上退出应用失效问题

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()