続・Local Notificationのハマりどころ

こんばんわ。araishiです。
先日書いた、「TitaniumのLocal Notificationのハマりどころ」の記事なんですが、ループで複数設定しても1つしか通知されなかったりと、挙動が不安定でしたが、バックグランドで実行すると複数でも正確に登録できる事がわかったので訂正しておきます。

app.js

// 値を保存
Ti.App.Properties.setString('hours',
{'2013/06/01 00:00:05', '2013/06/01 01:01:05', '2013/06/01 02:02:05'}
);

// バックグランドでservice.jsを実行
var service = Ti.App.iOS.registerBackgroundService({url:'service.js'});

service.js
バックグランドで実行されるスクリプト

if(Ti.App.Properties.hasProperty('hours')){
  Ti.App.iOS.cancelAllLocalNotifications();
  var notifications = [];
  var hours = Ti.App.Properties.hasProperty('hours');
  for(var i in hours) {
    notification_params = {
          alertBody: "アラート",
          alertAction: 'OK',
          date: new Date(hours[i])
        };
    notifications.push(Ti.App.iOS.scheduleLocalNotification(notification_params));
  }
}
Ti.App.currentService.stop();

通知系のデバッグするのは待つのが大変なんですよね。

カテゴリー: Titanium

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*