APNS では、デバイスが登録されるとき、登録されたトークンはどのくらいの期間有効ですか? アプリがインストールされている間ずっと?同期/リセットまでしか有効ではないというドキュメントのメモを思い出したようですが、ドキュメントをもう一度見ると、そのメモが見つかりません(そして、私の(確かに広範囲ではない)テストでは当てはまりませんでした) . 各トークンの有効期間を確認できる人はいますか?
2 に答える
デバイスが完全に消去されたときの変更に加えて、アプリ/デバイス コンボのトークンは、Xcode を使用してデバイスでデバッグされている場合と、リリースされた (アプリ ストア) バージョンのアプリから同じアプリが実行されている場合にも変更されます。
最近、自分の電話用に複数のデバイス トークンを保存していたときに問題が発生しました。データベースには、1 台の電話に対して 2 つのトークンがありました。1 つは Xcode で開発していたときに割り当てられ、もう 1 つはアプリのリリース バージョンから割り当てられました。
問題は、デバッグ トークンがサンドボックス サーバーでのみ機能し、リリース トークンが運用サーバーでのみ機能することでした。私がテストしていたとき、私は両方のトークンにアラートを送信していましたが、そのうちの 1 つが無効であったため、Apple は私の SSL 接続を切断しました。
そうは言っても、Apple はいつでもそれらを変更する権利を留保していると思います。そのため、アプリケーションを起動するたびにトークンを要求する必要があります。
それが役立つことを願っています。
デバイスがワイプされたときにのみ変更されるようです。アプリケーションのドキュメントでこれを見つけました:didRegisterForRemoteNotificationsWithDeviceToken:
デバイス トークンは UIDevice の uniqueIdentifier プロパティとは異なることに注意してください。これは、セキュリティとプライバシーの理由から、デバイスがワイプされたときに変更する必要があるためです。