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'); }