【发布时间】:2021-03-26 03:19:37
【问题描述】:
设置为通知
习惯于 Flutter 本地通知包
https://pub.dev/packages/flutter_local_notifications
我想多次设置相同的通知
DateTime current = 2020-12-15 21:00:00.000;
NotificationUtils.showNotification1(
time: current.subtract(Duration(days: 3)),
);
NotificationUtils.showNotification1(
time: current.subtract(Duration(hours: 24)),
);
NotificationUtils.showNotification1(
time: current.subtract(Duration(hours: 2)),
);
NotificationUtils.showNotification1(
time: current.subtract(Duration(minutes: 30)),
);
NotificationUtils.showNotification1(
time: current,
);
本地通知功能
class NotificationUtils {
static FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin;
static void configLocalNotification() {
var androidInitilize = AndroidInitializationSettings('appstore');
var iOSinitilize = IOSInitializationSettings();
var initilizationsSettings = new InitializationSettings(android: androidInitilize,
iOS:iOSinitilize);
flutterLocalNotificationsPlugin = new FlutterLocalNotificationsPlugin();
flutterLocalNotificationsPlugin.initialize(initilizationsSettings,onSelectNotification: (String
payload) async {});
}
static Future showNotification1({DateTime time}) async {
var androidDetails = new AndroidNotificationDetails(
"notification 1",
"App Notification 1",
"Notification 1",
importance: Importance.max,
priority: Priority.high,
color: Colors.blue,
playSound: true,
// timeoutAfter: 5000,
);
var iSODetails = new IOSNotificationDetails();
var generalNotificationDetails =
new NotificationDetails(android: androidDetails, iOS: iSODetails);
await flutterLocalNotificationsPlugin.zonedSchedule(
0,
"App",
"Notification",
time,
generalNotificationDetails,
androidAllowWhileIdle: true,
);}
static Future<void> cancelNotification() async {
await flutterLocalNotificationsPlugin.cancel(1);}}
【问题讨论】:
-
嗨哥们,你找到解决办法了吗?