いくつかの異なるアプリケーションのデータ (デバイス トークン) を保持するプッシュ通知サーバーがあります。Apple はユーザーが UDID を識別子として使用するのを止めたいと考えているため、私はこのサーバーを変更して、デバイスの識別に UDID に依存しないようにすることを検討していました。
APNs から返されるトークンはグローバルに一意ではなく、デバイスごとに一意であることを理解しています。しかし、私たちのデータベースを調べると、同じトークンが異なるデバイスに使用されているいくつかのケース (750k 以上の登録では数百) があることに気付きました。
だから私はこれを引き起こしているものを理解しようとしています。この時点で、次の 2 つの可能性が考えられます。
- サーバー登録処理のどこかにあいまいなバグがあります
- Apple はこれらのデバイス トークンをリサイクルします (おそらくデバイスのリセット後?)。特定のデバイスが最後に登録された時刻を常に保存しますが、同じトークンを使用して異なるデバイスを登録するには、常に少なくとも数日かかることに気付きました。私が知る限り、異なるデバイスで同時に使用されているトークンはありません。
誰かがこれに光を当てることができれば、本当に感謝しています。