カスタム ROM 上の Android デバイスの壊れたプッシュ通知の修正

XDA ではカスタム ROM が大好きですが、アプリのデータを復元するときにプッシュ通知が壊れる場合があります。 その原因と対処法を解説します!

XDA-Developers では、私たちは皆、カスタム ROM、テーマ、その他あらゆる種類の変更の大ファンです。 私たちの中には、異なるカスタム ROM をかなり定期的に切り替えるため、次のようなアプリのバックアップ ソリューションを使用する人もいます。 とバックアップ または人気のある Titanium Backup です。 フラッシュや ROM をクリーンに切り替えた後にプッシュ通知が壊れるという問題が多くのユーザーから報告されており、WhatsApp は最大の違反者の 1 つです。 Tumblr などの他のアプリも、プッシュ通知が表示されないという被害に遭います。 これはなぜですか? どうすれば修正できますか?


問題

Google Play サービスがインストールされている Android デバイスは、以前は Google Cloud Messaging (GCM) として知られていた Firebase Cloud Messaging (FCM) サービスに登録されます。 これにより、一意のデバイス トークンが計算され、FCM 対応アプリ (WhatsApp など) をインストールすると、そのアプリが FCM プッシュ サービスに登録され、プッシュ通知を送信できるようになります。 これにより、優先度の高い FCM 通知がデバイスにプッシュされるたびに、デバイスが Doze モードになっている間でもウェイクアップできます。 優先度の高い FCM 通知には、たとえば、WhatsApp やその他のインスタント メッセージング アプリケーションなどが含まれます。 ただし、デバイスに新しい ROM をインストールするときにシステムをワイプすると、電話機に 新しい FCM トークン、およびデータを使用して復元したアプリは、まだ古いトークンを使用しているため、FCM 通知をプッシュできなくなります。

しかし、携帯電話に Google Play サービスがインストールされていない場合はどうすればよいでしょうか? 通知はどのように受け取るのですか? FCM 対応アプリには通常、フォールバックとして独自のプッシュ通知サービスがあります。 たとえば、Facebook Messenger は FBNS と呼ばれるサービスを使用します。これは、Google Play Services が検出されない場合にデフォルトで使用されます。 これは、Facebook Messenger の内部に隠れている「プッシュ通知」セクションの下のスクリーンショットで確認できます。 一部のアプリは FCM が機能しないことを検出し、FCM が壊れると独自のサービスにフォールバックすると思いますが、明らかにすべてのアプリがこれを行うわけではありません。


壊れたプッシュ通知を解決する

問題の発生を回避する最も簡単な方法は、 アプリを普通にインストールする クリーン フラッシュまたは ROM スイッチの後に Titanium Backup (または選択した他のバックアップ サービス) を介して復元する代わりに。 一部のアプリではこれは骨が折れるかもしれませんが、WhatsApp などの多くのアプリではとにかくアプリ内でチャットをバックアップできます。 Tumblr などの他のアプリでは、すべてのデータがクラウドに保存されているため、それらを復元する必要はありません。 プッシュ通知に問題があり、バックアップ サービスを使用してアプリを復元した場合は、Play ストアから再インストールしてみてください。 私が個人的に経験したプッシュ通知に関する問題は、通常の方法でアプリを再インストールすることで修正されました (Play ストアまたは APK 経由で直接) 試してみてください。壊れたプッシュが修正されることを願っています 通知!


推奨読書: Quiet for Gmail を使用して迷惑な仕事メールを自動的に沈黙させる