MVNOが提供するSIMカード、いわゆる「格安SIM」は、いろいろな方法でコストを削減し安価な通信サービスを提供しています。自前の設備を持たず大手キャリアから通信回線を安く借り入れ、保守費用や人件費を抑えることで割安な料金を実現しており、大手キャリアに比べ通信品質に見劣りしがちです。

そのため、利用者が増える昼や夕方のピークタイムは、つながりにくい/通信速度が低下する傾向があるものの、通知の到着が遅いことは他の理由があると考えられます。一般的に通知のデータ量はごくわずかで、使える通信帯域に余裕のないMVNOでもさほど影響を受けないからです。

考えられる原因としては「セッションタイムアウト」が挙げられます。アプリからの通知をリアルタイムで知るためには、Googleの通知サーバとセッションが維持された状態でなければなりませんが、MVNO事業者によっては一定時間通信していない状態が続くと回線を自動切断することがあるのです。そうなるとセッションは閉じられ、端末に通知は届きません。

それでは困るため、Android端末は小さなパケット(Keep-Aliveパケット)を一定間隔で送信することで、セッションタイムアウトを回避します。定期的な生存報告でセッションを維持する、と考えれば理解しやすいでしょうか。大手キャリアにもセッションタイムアウトは存在しますが、MVNOはより短い時間に設定されがちで、Keep-Aliveパケットが送信される間隔より短いケースも存在します。それがセッションタイムアウトまでの時間より短ければ、通知が届かなくなるというわけです。

回避策としては、Wi-Fi回線を利用する、より短い間隔でメールチェックなどの通信を発生させるなどがありますが、Keep-Aliveパケットの送信間隔を手動設定できるアプリを導入することもひとつの方法です。外出時に通知が届かなくて困る、という場合に試す価値はあるでしょう。

  • 格安SIMを使っていますが、ときどき通知が来なくなります!?

    Android端末にときどき通知が来なくなる場合は……(画面は「Push Notification Fixer」)