periodicallyShow method Null safety

  1. @override
Future<void> periodicallyShow(
  1. int id,
  2. String? title,
  3. String? body,
  4. RepeatInterval repeatInterval,
  5. {AndroidNotificationDetails? notificationDetails,
  6. String? payload,
  7. bool androidAllowWhileIdle = false}
)
override

Periodically show a notification using the specified interval. For example, specifying a hourly interval means the first time the notification will be an hour after the method has been called and then every hour after that.

Implementation

@override
Future<void> periodicallyShow(
  int id,
  String? title,
  String? body,
  RepeatInterval repeatInterval, {
  AndroidNotificationDetails? notificationDetails,
  String? payload,
  bool androidAllowWhileIdle = false,
}) async {
  validateId(id);
  final Map<String, Object?> serializedPlatformSpecifics =
      notificationDetails?.toMap() ?? <String, Object>{};
  serializedPlatformSpecifics['allowWhileIdle'] = androidAllowWhileIdle;
  await _channel.invokeMethod('periodicallyShow', <String, Object?>{
    'id': id,
    'title': title,
    'body': body,
    'calledAt': clock.now().millisecondsSinceEpoch,
    'repeatInterval': repeatInterval.index,
    'platformSpecifics': serializedPlatformSpecifics,
    'payload': payload ?? '',
  });
}