My application uses the push notifications, I am asking the user to register for push notifications at the time of Application launch. Everything works fine if the user taps the 'allow' button. But what if the user presses "Dont' Allow" by mistake ? , I want to pop-up the message again in the device, to ask the user to get registered with the push notifications. How to ask the user again to get registered ?
5 に答える
iOS でのプッシュ通知のアクセス許可アラートのリセット
プッシュ対応アプリがプッシュ通知に初めて登録するとき、iOS はユーザーにそのアプリの通知を受け取るかどうかを尋ねます。ユーザーがこのアラートに応答すると、デバイスが復元されるか、アプリが少なくとも 1 日アンインストールされない限り、再度表示されることはありません。
アプリの初回実行をシミュレートする場合は、アプリを 1 日アンインストールしたままにしておくことができます。後者は、システム クロックを 1 日以上前に設定し、デバイスの電源を完全にオフにしてから、デバイスの電源を再びオンにすることで、実際に 1 日も待たずに実現できます。
ユーザー エクスペリエンスの観点から最も正しい方法は、アプリの [設定] セクションからプッシュ通知を許可するか許可しないかをユーザーに選択させることです。ユーザーの「いいえ、ありがとう」が間違って押されたのかどうかは本当にわかりません。
ユーザーが通知アラートをキャンセルしたり、誤って「許可しない」を押したりした場合は、後で簡単にアラートを送信して、Settings.app に移動し、プッシュ通知を「有効にする」ことができます。
application:didRegisterForRemoteNotificationsWithDeviceToken:
ストレージ メカニズムを使用して、ユーザーが.. および.. を介してアラートを受け入れたかどうかを判断しapplication:didFailToRegisterForRemoteNotificationsWithError
、後で確認して Settings.app にルーティングして通知を有効にします。
これが理にかなっていることを願っています..
ユーザーが [設定] でプッシュ通知を開くようにするだけです。コードで何もする必要はありません。
それを行う最善の方法は、最初にユーザーにプッシュ通知に登録するように依頼することです。その後、オプションでプッシュ通知に登録しなかった場合は、ユーザーに依頼しながらメッセージをポップアップするだけですOK でデリゲートを登録して呼び出します。