続きです。
https://flutter.tnantoka.com/entry/2019/05/24/230229
flutter_local_notificaitons
を使って、設定したい時間に通知を表示します。
https://github.com/MaikuB/flutter_local_notifications
initState
内で初期化しておいて…
1
2
3
4
5
6
7
8
9
_flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin();
const AndroidInitializationSettings initializationSettingsAndroid =
AndroidInitializationSettings('app_icon');
const IOSInitializationSettings initializationSettingsIOS =
IOSInitializationSettings();
const InitializationSettings initializationSettings =
InitializationSettings(
initializationSettingsAndroid, initializationSettingsIOS);
_flutterLocalNotificationsPlugin.initialize(initializationSettings);
通知の設定が変更されたら、通知を設定しなおします。
1
2
3
4
5
6
7
8
9
10
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の追加が必要)
https://github.com/MaikuB/flutter_local_notifications#android-integration
いつもと同じくソースコードはこちらです。
https://github.com/tnantoka/nikka
さて、この状態で最低限自分が使える状態にはなってしまったのと、
ストアに出してもあまりダウンロードされる気がしないので、
一旦このアプリはここでストップしたいと思います。