プッシュ通知が届かない主な要因は下記の通りとなります。
- Repro SDKが導入されていないアプリバージョンを利用している
- データ反映タイミングより前の配信時刻で設定している
- RegistrationID / device tokenが登録されてない
- ユーザーが配信対象に含まれていない
- プッシュ通知許諾をOFFにしている
- (Android端末の場合)通知チャンネルの設定をしていない
- (iOS端末の場合)プッシュ証明書に設定するものが誤っている
- (Push APIの場合)指定したユーザーが登録されていない
1. Repro SDKが導入されていないアプリバージョンを利用している
まだRepro SDKが導入されていないアプリバージョンを利用している端末では、プッシュ通知は配信されません。
2. データ反映タイミングより前の配信時刻で設定している
配信条件がテスター以外の場合、セッションがアップロードされてデータが反映されるまで時間が必要になります。(※反映時間はデータの種類により異なります)
表示の試験であれば、テスター機能を利用し、試験端末に設定されたユーザーIDを指定し再度試験してください。
テスター登録が成功しない場合は、セッションがアップロードされておらずユーザー情報が登録できていない可能性があります。
この場合はセッションがアップロードできているかログをご確認ください。
※テスター登録する場合、サーバー負荷状況によりセッションアップロード後最大20分程度時間が必要な場合があります。
3. RegistrationID / device tokenが登録されてない
プッシュ通知を配信するためには、端末のRegistrationID(Android) / device token(iOS)がReproに登録されている必要があります。この情報はセッションの中に含まれますので、実装後はセッションをアップロードしてReproに登録してください。
実装方法が正しく行われているかについて、改めて下記ドキュメントをご確認ください。
Android:http://docs.repro.io/ja/dev/sdk/push-notification/android.html#androidmanifest-xml
iOS:http://docs.repro.io/ja/dev/sdk/push-notification/ios.html#repro
またiOSでは下記のケースでdevice tokenが登録できません。
(iOS端末の場合)セッションをアップロードしてもReproに登録できない例
iOS端末の場合、Xcode(開発環境)で 下記の図のようにremote notificationsにチェックがないと、アプリインストール後に表示される「プッシュ通知を許諾しますか?」のポップアップでOFFにした際、device tokenが登録できません。
許諾がOFFでもdevice tokenを登録したい場合は、上図の③Remote notifications にチェックを入れていただくと登録されるようになります。
またチェックを入れた場合は、現在許諾がOFFになっていてdevice tokenが登録されていない端末も、セッションをアップロードすることでdevice tokenが登録されます。
上記で解決できない場合、RegistrationID/device tokenの情報はRepro管理画面からはご確認いただけませんので、キャンペーンURLと合わせてCREまでお問い合わせくださいませ。
4. ユーザーが配信対象に含まれていない
設定されたユーザーセグメントに端末を所持するユーザーが含まれていない可能性があります。
セグメントに合致する条件か改めて確認してください。
表示の試験であれば、テスター機能を利用し、試験端末に設定されたユーザーIDを指定し再度試験してください。
5. プッシュ通知許諾をOFFにしている
OSの設定でプッシュ通知許諾をOFFにしていると、プッシュ通知は表示されません。
プッシュ通知許諾がOFFになっていないか、改めてご確認ください。
6. (Android端末の場合)通知チャンネルの設定をしていない
アプリのtargetSDKVersionが26以上かつAndroid O以降の機種で動作させる場合、通知チャンネルのIDと名前が指定されていなければSDKはReproからのプッシュ通知を表示しません。
通知チャンネルの設定が行われているかご確認ください。
https://docs.repro.io/ja/dev/sdk/push-notification/android.html#notification-channel-setting
7. (iOS端末の場合)プッシュ証明書に設定するものが誤っている
iOS端末へプッシュ通知を送るために必要な証明書にはDevelopmentとProductionの2種類があります。IDEなどの開発環境でアプリを立ち上げている時はDevelopment証明書、リリースされているアプリの場合にはProductionの証明書を設定してください。
また、アプリのBundle IDとプロビジョニングプロファイルを作成するのに用いた証明書のBundle IDは同じものを設定してください。こちらが正しく設定されていないとプッシュ通知が届きません。証明書の設定につきましてはこちらをご確認ください。
8. (Push APIの場合)指定したユーザーが登録されていない
Push APIでは配信対象をユーザーIDで直接指定しますが、指定したユーザーがReproに登録されていない場合、プッシュ通知は届きません。
指定したユーザーがReproに登録されているか確認するには、テスター機能を利用して対象のユーザーIDを登録できるかお試しください。
上記で解決しないときは
下記の情報と併せてチャットサポートまでお問い合わせください!
- プッシュ通知詳細画面URL
- 検証した時刻
- ユーザーID
- 端末名
- 御社アプリバージョン
- OSバージョン
- AndroidID / IDFV / IDFA