今回は、アプリにローカル通知を送る方法について。
アプリから通知を送るには、以前にも何度か記事に取り上げた cordova-plugin-fcm など、インターネット経由で外部サービスと連携してプッシュ通知を送る方法がありますが、ローカル通知はアプリ自身が通知を送る仕組みです。
プラグインは「cordova-plugin-local-notifications」を使用しています。
GitHubはこちらから。
GitHub – katzer/cordova-plugin-local-notifications: Cordova Local-Notification Plugin
https://github.com/katzer/cordova-plugin-local-notifications
まずインストール方法ですが、下記のコマンドを実行します。
cordova plugin add cordova-plugin-local-notification
ローカル通知を送るには、下記のコードを実行します。
cordova.plugins.notification.local.schedule({ title: '[タイトル]', text: '[メッセージ]', foreground: true });
最低限、上記のタイトルやメッセージテキストなどを指定すれば、即時に通知が送付されます。
他にも指定できる項目があり、添付ファイルや、”Yes”、”No” などのボタン、更には文字の入力欄を追加することもできます。
また、trigger
という項目を指定することで、送付するタイミングや、繰り返し通知することもできます。
現時点では使ってはいませんが、こちらも便利そうですね。
サンプルコードはこちら。
// 指定した時間にローカル通知を送付 cordova.plugins.notification.local.schedule({ title: '[タイトル]', text: '[メッセージ]', trigger: { at: new Date([年], [月], [日], [時]) } }); // 指定した回数だけ毎日通知する cordova.plugins.notification.local.schedule({ title: '[タイトル]', text: '[メッセージ]', trigger: { every: 'day', count: [回数] } });
個人的には、あるエリアに行くと通知する、という下記のコードも便利そうだと思います。
cordova.plugins.notification.local.schedule({ title: '[タイトル]', text: '[メッセージ]', trigger: { type: 'location', center: [lat, long], radius: [通知半径], notifyOnEntry: true } });
ただし、こちらの位置による通知は iOS 未対応のようです。
ご利用になる際には、その点だけご注意ください。
以上、アプリにローカル通知を送信する方法についてでした。
予定のリマインドなど自分自身に通知を送りたいだけの時には、こちらのプラグインで十分だと思います。