requestNotificationPermissions static method

Future<bool> requestNotificationPermissions({
  1. required String icon,
  2. required String title,
  3. required String message,
  4. required List<Permission> permissions,
  5. required BuildContext buildContext,
  6. bool showFromRational = false,
})

Implementation

static Future<bool> requestNotificationPermissions(
    {required String icon,
    required String title,
    required String message,
    required List<Permission> permissions,
    required BuildContext buildContext,
    bool showFromRational = false}) async {
  var deniedPopupValue = await notificationPermissionDialog(
      icon: icon,
      title: title,
      message: message,
      context: buildContext); //Constants.audioCallPermission);
  if (deniedPopupValue) {
    LogMessage.d("deniedPopupValue", deniedPopupValue);
    var newp = await permissions.request();
    PermissionStatus? notification_ = newp[Permission.notification];
    if (notification_ != null) {
      LogMessage.d("notification_", notification_.isPermanentlyDenied);
      SessionManagement.setBool(Constants.notificationPermissionAsked, true);
    }
    return (notification_?.isGranted ?? true);
  } else {
    return false;
  }
}