私の Titan モバイル アプリケーションでは、ACS プッシュ通知を統合したいと考えています。最初のステップとして、プッシュ通知のドキュメントを確認しました。ドキュメントに記載されているように、iOS の設定を構成しました。2 人の ACS ユーザー (A と B としましょう) を作成し、次のコードを使用してカスタム チャネルにサブスクライブしました。
Cloud.PushNotifications.subscribe({
channel: '4fa8c8bfb6855370430092d1',
device_token: '0BCE1064500FBF6F122BB0000007D1B5F96BAC345FD0A950FD456098D36E0345'
}, function (e) {
if (e.success) {
alert('Success');
} else {
alert('Error:\n' +
((e.error && e.message) || JSON.stringify(e)));
}
});
現在、私の ACS プッシュ通知設定の下で、現在 2 つの iOS クライアントがプッシュ通知に登録されていることがわかります。以下のコードでは、ACS_UserA がログインしているデバイス A からブロードキャスト メッセージを送信しました。
Cloud.PushNotifications.notify({
channel: '4fa8c8bfb6855370430092d1',
payload: 'Welcome to push notifications'
}, function (e) {
if (e.success) {
alert('Success');
} else {
alert('Error:\n' +
((e.error && e.message) || JSON.stringify(e)));
}
});
「成功」というアラートが表示されます。しかし、ACS_UserB がログインしている別のデバイス B では通知を受け取ることができません。
こちらのドキュメントによると、「コールバック」コールバックでプッシュ メッセージを受信する必要があります。しかし、それは決して呼び出されません。
Ti.Network.registerForPushNotifications({
types: [
Ti.Network.NOTIFICATION_TYPE_BADGE,
Ti.Network.NOTIFICATION_TYPE_ALERT,
Ti.Network.NOTIFICATION_TYPE_SOUND
],
success:function(e) {
Ti.API.info('Device Token : '+e.deviceToken);
},
error:function(e) {
Ti.API.warn("push notifications failed: "+e);
},
callback:function(e) {
alert ('Push received');
}
});
Titanium SDK バージョン: 2.0.2 (04/18/12 12:18 0684d32) Titanium Studio、ビルド: 2.0.1.201204132053 iPhone デバイス ファミリ: iphone iPhone SDK バージョン: 5.0 iPhone シミュレートされたデバイス: iphone。
これをひどくクラックする必要があります。どんな助けでも大歓迎です。