cordova-plugin-local-notificationと仮定してなら
javascript
1function startTimer(duration) {
2 var timer = duration, minutes, seconds;
3 setInterval(function () {
4 minutes = parseInt(timer / 60, 10);
5 seconds = parseInt(timer % 60, 10);
6
7 // 残り時間を通知に表示する
8 cordova.plugins.notification.local.update({
9 id: 1,
10 title: "タイマー",
11 text: minutes + "分" + seconds + "秒",
12 foreground: true
13 });
14
15 if (--timer < 0) {
16 timer = duration;
17 }
18 }, 1000);
19}
20
21// 10分間のタイマーを開始する
22startTimer(10 * 60);
アプリを起動している間は、通知を表示する必要がないため、アプリがバックグラウンドに移行するときに通知を表示するように、Cordovaの「pause」および「resume」イベントを使用して、通知を表示および非表示にします。
javascript
1// アプリがバックグラウンドに移行するときに通知を表示する
2document.addEventListener("pause", function() {
3 cordova.plugins.notification.local.update({
4 id: 1,
5 foreground: false
6 });
7});
8
9// アプリがフォアグラウンドに戻ったときに通知を非表示にする
10document.addEventListener("resume", function() {
11 cordova.plugins.notification.local.update({
12 id: 1,
13 foreground: true
14 });
15});
とか?でどうでしょう?