kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

iosでプッシュ通知で来ないという場合の対処

iOSのプッシュ通知でやたらと通知がいかない人が多くて問い合わせが多い。

Androidではほとんどないのに、なぜiOS

iOSで通知がいかない理由

だいたいが設定が影響しています。iOSの場合、設定にて通知をON/OFFの設定があるためにOFFになっている場合はうけとることができません。

これはアプリごとに設定ができます。

さぁ、これはいつ、どこで設定がされるのか?ここが重要なことなのでしょう。

設定はアプリを起動した際に「通知を行いますが、よろしいでしょうか」的なダイアログが出てきて「はい/いいえ」が選択できるようになっています。

ここで「いいえ」を選択すると通知OFFになります。

大半の通知がこないといっている方はここで引っかかっています。

まぁ、あまり使っていない方だとくるって言ってるからくるでしょう。ぐらいで、最初のダイアログが設定に影響がでているとは思わないのでしょう。

通知をOFFにした場合の対処

通知をOFFにした場合でもOSの設定側で再度設定ができるので、そこで切り替えてもらえれば問題ありません。

「設定」→「通知」→「アプリ名」で通知の設定が可能なため、設定を見直してください。

これで準備が完了しました。

これで届く??

いえ、これでも届かない場合はあります。状況によりますが、これは通知の仕組み上の話があり、通知を利用するための値が取れていない場合があります。

OSの設定を変えたから届くでしょ!?

といわれても、残念ながら届かないのです。これは作りの問題ではありますが。。。

iOSでプッシュ通知を行う際に利用している値があるのですが、これをサーバーに送る必要があります。最初のダイアログでOFFにしてしまうと値が取れなくなっていて、サーバーに情報を送ることができないのです。

なので、OSでの設定を変えた場合は、アプリを起動することをおすすめします。

それでも届かない場合は、アプリの作りがわるいことがおおいですね。

これはサポートセンターなどに連絡しましよう。

突然通知が届かなくなる場合がある

これはかなりどうしようもない。。。

やれることは

  • アプリ再起動
  • OSの再起動
  • アプリの再インストール

かなり原因不明な感じですが、大体再インストールまですれば確実に届く。

このあたりはiOS側で頑張ってほしいです。