mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-28 06:29:39 +00:00
a65c395337
* Update app versions * Ignore camera permission check for iOS
37 lines
943 B
Dart
37 lines
943 B
Dart
import 'dart:io';
|
|
|
|
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 {
|
|
if (Platform.isIOS) {
|
|
return true;
|
|
}
|
|
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;
|
|
}
|
|
}
|