- 新しい順
- 投票が多い順
- コメントが多い順
- 判定方法1と判定方法2は、基本的に同じ結果を得ることを目的としていますが、アプローチが異なります。
判定方法1は、イベントベースでリアルタイムに失敗を検知し、さらにEndpointUpdatedイベントを使用して最新の状態を確認します。一方、判定方法2は、定期的にすべてのエンドポイントの状態を一括で確認します。
どちらか一方だけでも基本的な判定は可能ですが、それぞれに長所があります:
- 判定方法1は、リアルタイム性が高く、イベント発生時にすぐに対応できます。
- 判定方法2は、すべてのエンドポイントの状態を定期的に確認できるため、見落としが少なくなります。
理想的には、両方の方法を組み合わせて使用することで、より確実な判定が可能になります。
- iOSアプリのアンインストール後のPUSH通知の失敗判定は、Androidと比べて難しい課題です。これは、Apple Push Notification service (APNs)の仕様によるものです。
残念ながら、iOSアプリがアンインストールされただけの状態で確実にPUSH配信の無効を判定する直接的な方法はありません。しかし、以下のアプローチを検討することで、ある程度の改善が可能かもしれません:
a. 定期的なテスト通知の送信: 小さなペイロードのテスト通知を定期的に送信し、デバイスの状態を確認します。これにより、アンインストールされたアプリを早期に検出できる可能性があります。
b. アプリケーションレベルでの対策: アプリ起動時やバックグラウンド更新時に、デバイストークンをサーバーに送信し、最後の確認日時を記録します。長期間更新がないエンドポイントは、アンインストールされた可能性が高いと判断できます。
c. ユーザーエンゲージメントの監視: アプリの使用状況やサーバーとの通信頻度を監視し、長期間アクティビティがないユーザーのエンドポイントを無効と判断する方法も考えられます。
d. APNsのフィードバックサービスの活用: APNsは、デバイストークンが無効になった場合にフィードバックを提供します。このサービスを定期的にチェックすることで、無効になったトークンを特定できる可能性があります。
これらの方法を組み合わせることで、iOSアプリのアンインストール後のPUSH通知の失敗判定の精度を向上させることができるかもしれません。ただし、完全な解決策ではないことに注意してください。
Sources
Sending mobile push notifications with Amazon SNS - Amazon Simple Notification Service
Amazon Simple Notification Service (SNS) FAQs | Messaging Service | AWS
