1

私の知る限りでは、 APNS からデバイス トークンを取得すると、それを再び取得することはできません。(ただし、データを新しいデバイスまたはコンピューターにバックアップする場合、オペレーティング システムを再インストールする場合、または を呼び出すデバイス トークンが変更された場合は除くdidRegisterForRemoteNotificationsWithDeviceToken)

そう、

デバイストークンが変更されるたびに、新しいデバイストークンをキーチェーンに置き換えて保存し、他の目的で失われるのを防ぎます (デバイストークンを UUID に使用するなど)。

  1. キーチェーンのデータが消えたのにデバイストークンが変わらないということはありえますか?

    (はいの場合。didRegisterForRemoteNotificationsWithDeviceToken再度呼び出されず、最後のデバイス トークンを取得できません。)

  2. または、イベントによりキーチェーンデータが消え、(一般的に) デバイストークンが変更されます (またはdidRegisterForRemoteNotificationsWithDeviceToken再度トリガーされます) ?

    私のテストでは、

    A. iPhone の「すべての設定をリセット」では、キーチェーン データは消去されず、トリガーされませんdidRegisterForRemoteNotificationsWithDeviceToken

    B. iPhone の「すべてのコンテンツと設定を消去」は、キーチェーン データを消去し、すべてのアプリを削除します。そのため、再度呼び出すアプリを再インストールするとdidRegisterForRemoteNotificationsWithDeviceToken

    ケースAとBは気にしません.OSバージョンの更新、OSの再インストール、または何らかのイベントにより、デバイストークンも変更されたと思います。

  3. キーチェーンとデバイストークンの間の値の変化の正しい対応状態を知っている人はいますか?

ありがとう!!

アップデート

問題は、キーチェーンデータが消えたイベントが(一般的に)「didRegisterForRemoteNotificationsWithDeviceToken」を再びトリガーするかどうかです。

そうでない場合、どのイベントですか?

4

2 に答える 2