私のアプリでは、webview を使用しています。このチュートリアルに従って、通知を実装しました。
http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1
私のウェブサイトでは、db に追加された新しいイベントをチェックする js コードを使用しています。
function checkNotification()
{
$.ajax({
url: '/checkNewMessages',
type: "GET",
success: function (result)
{
// if new event, then I run the #c code below to tell
// the APN server to send the notif to the device.
}
});
}
通知を送信するには、#c コードを使用しています。
var deviceToken = "2191a536a52445046797a871fe3c4cf...";
var message = "this is a notification.";
var badge = 1;
var password = "blablabla";
var payload = new NotificationPayload(deviceToken, message, badge);
var notificationList = new List<NotificationPayload>() { payload };
var push = new PushNotification(true, "apn_developer_identity.p12", password);
var result = push.SendToApple(notificationList);
そして、これを10000ミリ秒ごとにチェックします
setInterval(checkNotification, 10000);
ただし、この js コードは、ユーザーがアプリを使用している場合にのみ実行されます。アプリが実行されていないときはどうなりますか? ユーザーは通知を受け取ることができませんか? データベースで新しいイベントをチェックするバックグラウンドで常に実行されているスクリプトが必要です。これを行う最善の方法は何ですか? ご協力いただきありがとうございます。