$rootScope.$on('$cordovaLocalNotification:trigger', function(event, notification, state) {
//code
});
私は上記のコードを試しましたが、通知中に既にアプリケーションが開いているときに使用しました。私は、アプリが開かれていない間に発生したすべての通知を数えたいと思う。 方法はありますか?Ionic v1ローカル通知トリガーステータス
$rootScope.$on('$cordovaLocalNotification:trigger', function(event, notification, state) {
//code
});
私は上記のコードを試しましたが、通知中に既にアプリケーションが開いているときに使用しました。私は、アプリが開かれていない間に発生したすべての通知を数えたいと思う。 方法はありますか?Ionic v1ローカル通知トリガーステータス
ローカルストレージにこれらの通知があり、デバイスの準備が整っています。現在の時刻と予定時刻を比較し、トリガーされた通知を計算します。
アプリケーションコードを維持するために実行することはできません(単に例えばアンドロイドとバックグラウンドに入れていません)最新のカウンタはlocalStorageまたはSqlite-DBに格納されています。
だからあなたの要求が満たされるように、カウンタを増加させる唯一の方法:
私はあなたが持っているアプリが
を開いていないしている間にトリガーされたすべての通知をカウントします使用する:
$rootScope.$on('$cordovaLocalNotification:click', function(event, notification, state) {
// increase counter in your localStorage or Sqlite-DB here
});
このためdoc状態として:
クリックイベントは、アプリが実行されていない場合はデバイスの後にも呼び出されます。
クリックイベントは、アプリが開いているかどうかに関係なく、通知がクリックされたときに常に呼び出されます。 iOSの
アプリが開いていないか、が
、あなたはこの方法でそれを行うことができます。
$ionicPlatform.ready(function() {
// ....
$rootScope.$on('$cordovaLocalNotification:click', function(event, notification, state) {
if(state === "background"){
console.log("increase counter");
}
});
// or if the first does not fire like with me, then use this instead:
cordova.plugins.notification.local.on('click', function (notification, state) {
if(state === "background"){
console.log("increase counter");
}
});
// ....
});
が、これは、同様に役立ちます願っています。
ありがとうございますが、これにより、ユーザーがクリックしなかった場合はカウントできません。 私はこの方法で解決策を見つけました。これらの通知はローカルのストレージに保存されています。私は現在の時刻とスケジュール時刻を比較し、トリガーされた通知を計算します。 ;) –