File tree Expand file tree Collapse file tree 6 files changed +42
-8
lines changed Expand file tree Collapse file tree 6 files changed +42
-8
lines changed Original file line number Diff line number Diff line change 33 <uses-permission android : name =" android.permission.INTERNET" />
44 <uses-permission android : name =" android.permission.READ_EXTERNAL_STORAGE" />
55 <uses-permission android : name =" android.permission.POST_NOTIFICATIONS" />
6+ <uses-permission android : name =" android.permission.WRITE_EXTERNAL_STORAGE" />
7+ <uses-permission android : name =" android.permission.MANAGE_EXTERNAL_STORAGE" />
68 <uses-permission android : name =" android.permission.RECEIVE_BOOT_COMPLETED" />
79 <uses-permission android : name =" android.permission.USE_EXACT_ALARM" />
810 <uses-permission android : name =" android.permission.VIBRATE" />
Original file line number Diff line number Diff line change @@ -62,6 +62,7 @@ class SettingsController extends GetxController {
6262 profilesWidget.setBaseDirectory (destination);
6363 SharedPreferences prefs = await SharedPreferences .getInstance ();
6464 prefs.setString ('baseDirectory' , destination.path);
65+ baseDirectory.value = destination.path;
6566 } else {
6667 showDialog (
6768 context: context,
Original file line number Diff line number Diff line change @@ -136,6 +136,7 @@ class SettingsPageSelectDirectoryListTile extends StatelessWidget {
136136 await SharedPreferences .getInstance ();
137137 await prefs.remove ('baseDirectory' );
138138 controller.isMovingDirectory.value = false ;
139+ controller.baseDirectory.value = "Default" ;
139140 });
140141 },
141142 child: Text (
Original file line number Diff line number Diff line change 1+ import 'package:permission_handler/permission_handler.dart' ;
2+
3+ List <Permission > permissions = [
4+ Permission .notification,
5+ Permission .storage,
6+ Permission .manageExternalStorage,
7+ ];
Original file line number Diff line number Diff line change 1+ // ignore_for_file: avoid_print
2+
3+ import 'package:permission_handler/permission_handler.dart' ;
4+ import 'package:taskwarrior/app/utils/constants/permissions.dart' ;
5+
6+ class PermissionsManager {
7+ static Future <void > requestAllPermissions () async {
8+ try {
9+ for (var permission in permissions) {
10+ final status = await _requestPermission (permission);
11+
12+ if (status) {
13+ print ("Permission '${permission .toString ().split ('.' ).last }' granted." );
14+ } else {
15+ print ("Permission '${permission .toString ().split ('.' ).last }' denied." );
16+ }
17+ }
18+ } catch (e) {
19+ print ("Error requesting permissions: $e " );
20+ }
21+ }
22+
23+ static Future <bool > _requestPermission (Permission permission) async {
24+ final status = await permission.request ();
25+ return status.isGranted;
26+ }
27+ }
Original file line number Diff line number Diff line change 11import 'package:flutter/material.dart' ;
2-
32import 'package:get/get.dart' ;
4- import 'package:permission_handler/permission_handler.dart' ;
53import 'package:taskwarrior/app/utils/app_settings/app_settings.dart' ;
6-
4+ import 'package:taskwarrior/app/utils/permissions/permissions_manager.dart' ;
75import 'app/routes/app_pages.dart' ;
86
97void main () async {
108 WidgetsFlutterBinding .ensureInitialized ();
119 await AppSettings .init ();
1210
13- await Permission .notification.isDenied.then ((value) {
14- if (value) {
15- Permission .notification.request ();
16- }
17- });
11+ await PermissionsManager .requestAllPermissions ();
12+
13+
1814 runApp (
1915 GetMaterialApp (
2016 title: "Application" ,
You can’t perform that action at this time.
0 commit comments