check_permission function

Future<bool> check_permission({
  1. required BuildContext context,
  2. required String message,
  3. required String message_no,
  4. required String message_yes,
  5. required Permission permission_type,
})

Implementation

Future<bool> check_permission({
  required BuildContext context,
  required String message,
  required String message_no,
  required String message_yes,
  required Permission permission_type,
}) async {
  bool must_encourage_give_permission = false;

  if (UniversalPlatform.isIOS || UniversalPlatform.isAndroid) {
    if (await permission_type.request().isDenied ||
        await permission_type.request().isPermanentlyDenied) {
      must_encourage_give_permission = true;
    }
  }

  if (must_encourage_give_permission) {
    encourage_give_permission(
      context: context,
      message: message,
      message_no: message_no,
      message_yes: message_yes,
    );
    return !must_encourage_give_permission;
  } else {
    return !must_encourage_give_permission;
  }
}