From 57ac5f618d3e7f2af0d3bc9d8236ed5f78899e5d Mon Sep 17 00:00:00 2001 From: WinUser01 Date: Fri, 17 Dec 2021 10:55:41 +0800 Subject: [PATCH] =?UTF-8?q?hyzp=5Fybqx-Commit029=EF=BC=9A=E6=A0=87?= =?UTF-8?q?=E6=B3=A8=E6=95=B4=E4=B8=AAFlutter=20App=E7=9A=84=E5=85=A5?= =?UTF-8?q?=E5=8F=A3=E8=BF=87=E7=A8=8B01-07=E3=80=82=E6=89=BE=E5=88=B0?= =?UTF-8?q?=E5=85=A5=E5=8F=A3=E5=A4=84=E7=90=86=E7=BB=93=E6=9D=9F=EF=BC=8C?= =?UTF-8?q?=E6=AD=A3=E5=BC=8F=E5=BC=80=E5=A7=8BFlutter=20App=E7=9A=84?= =?UTF-8?q?=E8=B5=B7=E7=82=B9MyApp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/file_manager/file_manager_init.dart | 24 +++++++++++++++--------- lib/main.dart | 6 ++++++ 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/lib/file_manager/file_manager_init.dart b/lib/file_manager/file_manager_init.dart index 2ed51d2..a1e4dc4 100644 --- a/lib/file_manager/file_manager_init.dart +++ b/lib/file_manager/file_manager_init.dart @@ -2,21 +2,26 @@ import 'dart:async'; import 'dart:io'; import 'package:flutter/material.dart'; -import 'common.dart'; +import 'package:flutter/services.dart'; +import 'package:fluttertoast/fluttertoast.dart'; +import 'package:intl/date_symbol_data_local.dart'; //import 'file_manager.dart'; import 'package:path_provider/path_provider.dart'; import 'package:permission_handler/permission_handler.dart'; -import 'package:intl/date_symbol_data_local.dart'; -import 'package:fluttertoast/fluttertoast.dart'; -import 'package:flutter/services.dart'; + import '../main.dart'; +import 'common.dart'; +//整个Flutter App的入口02 checkPermission() { WidgetsFlutterBinding.ensureInitialized(); - initializeDateFormatting("zh_CN", null).then((value) async{ + initializeDateFormatting("zh_CN", null).then((value) async { + //整个Flutter App的入口03 bool ret = await getPermission(); if (ret) { + //整个Flutter App的入口04 getSDCardDir().then((value) { + //整个Flutter App的入口05 //runApp(MyApp()); runApp(MaterialApp( //title: '启动图demo', @@ -25,10 +30,9 @@ checkPermission() { brightness: Brightness.light, backgroundColor: Colors.white, platform: TargetPlatform.android), - home: new SplashScreen(), - routes: { - '/home': (BuildContext context) => MyApp() - }, + home: new SplashScreen(), //整个Flutter App的入口06 + //整个Flutter App的入口07 + routes: {'/home': (BuildContext context) => MyApp()}, )); }); } else { @@ -38,6 +42,7 @@ checkPermission() { }); } +//整个Flutter App的入口03 // Permission check,适用于 permission_handler: ^5.x.x Future getPermission() async { if (Platform.isAndroid) { @@ -77,6 +82,7 @@ Future getPermission() async { // return true; // } +//整个Flutter App的入口04 Future getSDCardDir() async { Common().sDCardDir = (await getExternalStorageDirectory()).path; } diff --git a/lib/main.dart b/lib/main.dart index 06d18a4..8049852 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -19,10 +19,12 @@ import 'provider/player_ratio.dart'; import 'provider/player_region.dart'; import 'routers/router.dart'; +// 整个Flutter App的Android入口 void main() { //file_manager_load(); //runApp(MyApp()); + //整个Flutter App的入口01 WidgetsFlutterBinding.ensureInitialized(); //必须要添加这个进行初始化 否则下面会错误 //Flutter 强制竖屏 SystemChrome.setPreferredOrientations([ @@ -31,6 +33,7 @@ void main() { // DeviceOrientation.landscapeLeft, //顺时针旋转90度 // DeviceOrientation.landscapeRight, //逆时针旋转90度 ]).then((_) { + //整个Flutter App的入口02 checkPermission(); //请求用户授权 }); } @@ -51,6 +54,7 @@ void main() { // } // } +//整个Flutter App的入口07。入口处理结束,正式开始Flutter App class MyApp extends StatefulWidget { MyApp({Key key}) : super(key: key); @@ -196,6 +200,7 @@ class _MyAppState extends State { } } +//整个Flutter App的入口06 class SplashScreen extends StatefulWidget { @override _SplashScreenState createState() => new _SplashScreenState(); @@ -208,6 +213,7 @@ class _SplashScreenState extends State { return new Timer(_duration, navigationPage); } + //整个Flutter App的入口07 void navigationPage() { Navigator.of(context).pushReplacementNamed('/home'); }