プッシュ通知の遅延が解決?Heartbeat Fixer for GCM

2024年1月7日

Heartbeat Fixer for GCMはプッシュ通知の遅延の解決に繋がるかもしれない、ハートビート間隔を設定出来るオープンソースアプリ。スマホをスクリーンオフにしてスリープにした状態で通知が受け取れない、または遅延するといった問題はAndroidではよくありますが、そのような問題の解決策の一つとしてよく紹介されているのがHeartbeat Fixer for GCMです。ユーザ指定の間隔でデータを送信して通信を維持する仕組みと思われ、ハートビート間隔が原因でプッシュ通知に問題が出ている場合は解決策の一つになりえる可能性があります。

Heartbeat Fixer for GCM メイン画面
Heartbeat Fixer for GCM Wi-Fiの間隔
Heartbeat Fixer for GCM モバイル通信の間隔
開発/提供MoboDev
確認バージョン1.6
Android 要件4.0以上
価格無料(広告有り)
ダウンロードGoogle Play
Heartbeat Fixer for GCM概要

まずハートビートとは何なのかの理解の為にIT用語辞典から抜粋したのが下になります。

セッション維持のためのハートビート。通信プロトコルや通信ソフトなどの場合、死活監視のためだけでなく、通信を確立した相手方とのセッションや接続が途切れることを防ぐため、一定間隔で短い(それ自体は意味のない)データを送信し続けることがある。そのようなデータをハートビートと呼び、これにより接続維持を維持する仕組みを「キープアライブ」(keepalive)という。

IT用語辞典

一定時間通信が行われなかった際に通信接続が切断されるのを防ぐのがハートビートと解釈しておけば良いでしょう。Heartbeat Fixer for GCMはそのハートビートの間隔をユーザの指定間隔に設定出来るアプリですが、大手キャリアと比べて短時間で切断されると一部で噂のMVNO(格安SIM)のSIM使用時にこのアプリは有効かもしれません。但しDozeによってプッシュ通知の遅延に問題が出ている場合は、Heartbeat Fixer for GCMでは解決できない可能性が高いです。実際に私のスマホでは全く効果がありませんでした。因みにDozeの問題はDoze Busterで解決出来ています。

Heartbeat Fixer for GCM 設定、使い方

Heartbeat Fixer for GCMは設定も少ないので使い方は簡単です。「Settings」欄にある「GCM heartbeat interval WiFi」でWi-Fi通信のハートビート間隔を指定、「GCM heartbeat interval Mobile」でモバイル通信のハートビート間隔を指定、後は右上にあるボタンをタップするだけで有効化されます。有効化されるとボタンが赤くなり、もう一度タップする事で無効化されます。

Wi-Fiとモバイルの設定時間はどちらも「recommmended」(推奨の意味)となっている5分に設定して効果があるか様子見してみると良いでしょう。最短で1分にも設定出来ますが(drastic)とあるように劇的な効果があるかもしれません。

Heartbeat Fixer for GCM 有効化
Heartbeat Fixer for GCM モバイルの間隔設定
Heartbeat Fixer for GCM 寄付画面

因みに「MoboDev」欄以降は触る必要はありません。「Remove Banner Ad」は広告を非表示にする為のもののようですが、作者に寄付が必要となっています。頻繁に起動するようなアプリではないので広告表示が気になる事は無いと思いますが、もしこのアプリが効果があった場合は寄付されてみても良いと思います。

「Recommend apps」は同作者製作のアプリ一覧が表示されます。「Share app」は知り合いへのアプリの共有、「Feedback」は作者へのメールでの連絡とGoogle Playでの評価画面の表示となります。

Heartbeat Fixer for GCMの効果を検証

既に上で効果が無かったと書いた通りなのですが、検証した内容を一応記載しておきます。念の為、Heartbeat Fixer for GCMは電池の最適化から除外しておきました。Wi-Fi、モバイル共にハートビート間隔を5分に設定。その上でスクリーンオフにしてから2時間近く放置してGmailにメールを送信してプッシュ通知が受け取れるかを検証。結果、送信から15分経っても反応なし。

つまり私のスマホでは通知の遅延や通知されない問題はハートビートとは関係なかった模様。これも上で書きましたが通知の問題はDozeが原因で、Doze Busterで解決出来ました。