Start trying to fix permission errors on Android
This commit is contained in:
parent
e62fc5cf91
commit
9055c8cb0a
8 changed files with 94 additions and 7 deletions
|
@ -2,6 +2,8 @@ import 'package:flutter/material.dart';
|
|||
import 'package:nbteditor/Editor.dart';
|
||||
import 'package:nbteditor/pages/AddPage.dart';
|
||||
import 'package:nbteditor/pages/SNBTEditor.dart';
|
||||
import 'package:nbteditor/pages/permsrequired.dart';
|
||||
import 'package:permission_handler/permission_handler.dart';
|
||||
|
||||
void main() {
|
||||
runApp(const MainApp());
|
||||
|
@ -15,10 +17,45 @@ class MainApp extends StatelessWidget {
|
|||
return MaterialApp(
|
||||
theme: ThemeData.dark(),
|
||||
routes: {
|
||||
"/": (context) => const Editor(),
|
||||
"/": (context) => StartPage(),
|
||||
"/edit": (context) => const Editor(),
|
||||
"/add": (context) => const AddPage(),
|
||||
"/snbt": (context) => const SnbtEdit(),
|
||||
"/perms": (context) => PermissionsRequiredPage()
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class StartPage extends StatefulWidget {
|
||||
@override
|
||||
State<StatefulWidget> createState() {
|
||||
return StartPageState();
|
||||
}
|
||||
}
|
||||
|
||||
class StartPageState extends State<StartPage> {
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
checkPermissions();
|
||||
}
|
||||
|
||||
Future<void> checkPermissions() async {
|
||||
if (await Permission.manageExternalStorage.isDenied) {
|
||||
await Future.delayed(Duration(seconds: 5), () {
|
||||
Navigator.pushReplacementNamed(context, "/perms");
|
||||
});
|
||||
} else {
|
||||
Navigator.pushReplacementNamed(context, "/edit");
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
body: Column(
|
||||
children: [Image(image: AssetImage("Icons/PNG/nbteditor.png"))],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue