続きです。
flutter_local_notificaitons
を使って、設定したい時間に通知を表示します。
initState
内で初期化しておいて…
_flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin(); const AndroidInitializationSettings initializationSettingsAndroid = AndroidInitializationSettings('app_icon'); const IOSInitializationSettings initializationSettingsIOS = IOSInitializationSettings(); const InitializationSettings initializationSettings = InitializationSettings( initializationSettingsAndroid, initializationSettingsIOS); _flutterLocalNotificationsPlugin.initialize(initializationSettings);
通知の設定が変更されたら、通知を設定しなおします。
await _flutterLocalNotificationsPlugin.cancelAll(); final AndroidNotificationDetails androidPlatformChannelSpecifics = AndroidNotificationDetails('reminder', 'Reminder', 'Daily reminder'); final IOSNotificationDetails iOSPlatformChannelSpecifics = IOSNotificationDetails(); final NotificationDetails platformChannelSpecifics = NotificationDetails( androidPlatformChannelSpecifics, iOSPlatformChannelSpecifics); await _flutterLocalNotificationsPlugin.showDailyAtTime(0, 'Reminder', "Today's TODOs is over?", time, platformChannelSpecifics);
これで每日通知でリマインダーしてくれるようになりました。
なお、Androidはいろいろ設定が必要なので注意です。
(画像とManifestの追加が必要)
いつもと同じくソースコードはこちらです。
さて、この状態で最低限自分が使える状態にはなってしまったのと、
ストアに出してもあまりダウンロードされる気がしないので、
一旦このアプリはここでストップしたいと思います。