scheduleNotification method
Schedules notification
Implementation
scheduleNotification() async {
if (parent.nm != null) {
FlutterLocalNotificationsPlugin plugin =
FlutterLocalNotificationsPlugin();
const AndroidInitializationSettings initializationSettingsAndroid =
AndroidInitializationSettings('ic_launcher');
final IOSInitializationSettings initializationSettingsIOS =
IOSInitializationSettings(
onDidReceiveLocalNotification: onDidReceiveLocalNotification);
final MacOSInitializationSettings initializationSettingsMacOS =
MacOSInitializationSettings();
final InitializationSettings initializationSettings =
InitializationSettings(
android: initializationSettingsAndroid,
iOS: initializationSettingsIOS,
macOS: initializationSettingsMacOS);
await plugin.initialize(initializationSettings,
onSelectNotification: selectNotification);
if (getTime().isAfter(DateTime.now())) {
print("scheduled to:" + parent.notificationModel.date1);
await plugin.zonedSchedule(
parent.notificationModel.note,
parent.nm.getTitleFromModel(16),
parent.nm.getShortDesc(24),
getTime(),
const NotificationDetails(
android: AndroidNotificationDetails('your channel id',
'Notifications', 'Channel for your alarms')),
androidAllowWhileIdle: true,
uiLocalNotificationDateInterpretation:
UILocalNotificationDateInterpretation.absoluteTime);
}
}
}