1. ホーム
  2. iphone

[解決済み] アプリのプッシュ通知設定をリセットする

2022-04-21 22:14:21

質問

プッシュ通知を利用したアプリを開発しています。ユーザーとのインタラクションのあらゆる可能性を確認するために、最初の起動時にユーザーが私のアプリのプッシュ通知を有効にすることを拒否した場合のアプリをテストしたいと思います。

ダイアログ( registerForRemoteNotificationTypes しかし、1つのアプリにつき1回しか表示されません。iPhone OSのアプリのメモリをリセットするにはどうすればよいですか。アプリを削除して再インストールしてもダメです。

解決方法を教えてください。

テクニカルノートTN2265。プッシュ通知のトラブルシューティング

<ブロッククオート

プッシュ対応アプリの初回起動時 プッシュ通知に登録すると、iOS 受信を希望するかどうかをユーザーに尋ねます。 の通知を受けることができます。一度 このアラートに対してユーザーが応答すると、そのアラートは を表示しない限り、再び表示されることはありません。 を復元するか、アプリを削除してください。 をアンインストールして1日以上経過している。

初回起動をシミュレートしたい場合 を実行したままにしておくことができます。 を1日アンインストールします。 を実現することができます。 後者は実際に1日待つことなく システム時計を設定することで、1日 1日以上前にして、電源を切る デバイスの電源を完全に切り、その後電源を入れる。 を選択します。

更新しました。 以下のコメントにあるように、iOS 5.1以降、この解決策は機能しなくなりました。Appleにバグを報告し、ドキュメントを更新してもらうことをお勧めします。現在のところ、デバイスのコンテンツと設定をリセットすることで解決するようです。

更新しました。 このテクニカルノートは、iOS 7以降で正しく動作する新しいステップに更新されました。

<ブロッククオート
  1. デバイスからアプリを削除します。
  2. 端末の電源を完全に切り、電源を入れ直す。
  3. 設定」→「一般」→「日付」→「時刻」と進み、1日以上先の日付に設定します。
  4. 再度、完全に電源を切り、電源を入れ直す。

iOS 9時点の最新情報

アプリを削除して再インストールするだけで、通知状態が以下のようにリセットされます。 notDetermined (プロンプトが表示されることを意味します)。

下記のGomfuciusさんの回答に感謝します。 https://stackoverflow.com/a/33247900/704803