CW-315-Add-a-toast-message-to-enable-denied-permissions-in-device-settings (#1157)

* add permission handler

* localization

* minor fixes

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
This commit is contained in:
Serhii
2023-11-02 19:19:39 +02:00
committed by GitHub
co-authored by OmarHatem
parent e5d99313eb
commit d997ee81a1
33 changed files with 82 additions and 3 deletions
+32
View File
@@ -0,0 +1,32 @@
import 'package:cake_wallet/generated/i18n.dart';
import 'package:cake_wallet/utils/show_bar.dart';
import 'package:flutter/cupertino.dart';
import 'package:permission_handler/permission_handler.dart';
class PermissionHandler {
static Future<bool> checkPermission(Permission permission, BuildContext context) async {
final Map<Permission, String> _permissionMessages = {
Permission.camera: S.of(context).camera_permission_is_required,
};
var status = await permission.status;
if (status.isDenied) {
status = await permission.request();
}
if (status.isPermanentlyDenied || status.isDenied) {
String? message = _permissionMessages[permission];
if (message != null) {
showBar<void>(context, message);
}
return false;
}
if (status.isGranted) {
return true;
}
return false;
}
}