Chienomi

最新Androidの「通知」が大変厳しい

雑感::mobile

序

Find X6 Proは「通知が来ない」という問題がある。 Find X2 Proの場合は基本的に通知が来る状況では、ある程度のディレイはあったとしても通知が来るのだが、Find X6 Proはもともと全然通知がこなかった。 だが、安定しないだけで通知が来ることはあったのだが、Find X6 ProのアップデートでColorOS 14になってから「通知を見たことがない」という気がした。

この問題は偶発的な問題ではないように思う。 ColorOS 13はデフォルトの通知設定が鳴らないような方向性になっており、ColorOS 14はよりその方向が強められているため、全体の方向性として通知を抑制する方向にあるのだろう。

ColorOS 13では通知をオンにしてもデフォルトがサイレント通知になるようになっており、ドロワーにこっそり表示されるだけだった。 このため、通知を表示/鳴らすためには通知の設定でアプリごとにサイレント通知をオフにする必要がある。

ColorOS 14では、サイレント通知がアプリ全体の設定から消え、通知種別の中に入った。 アプリ全体では「着信音」の項目がオフになっていて、デフォルトでは音が鳴らない。 加えて、種別ごとの着信音が「なし」に設定されており、着信音を有効にしただけでも音が鳴らない。 音を鳴らすところまでやろうとすると、アプリごとにアプリの通知設定で

  • 通知をオン
  • 着信音をオン
  • 通知したい種別すべての着信音設定を「自動」に

というステップを踏む必要がある。

アプリの通知設定がそんなにアクセスしやすいところにあるわけでもない上に、着信音の設定はさらに深いところにあり、かなり大変。 アプリによっては通知種別はかなり多い(20種類くらいあるやつもある)ので、設定は相当しんどい。

通知種別は多い上に分かりにくい

ところが、問題はこれをオンにしても通知が届かない、ということだ。 ColorOSの場合は、なにをどうがんばっても通知がこない。

Find X2 ProはColorOS 7.1 (Android 10ベース)からColorOS 11 (Android 11ベース)へとアップデートされた。 Find X6 ProはColorOS 13 (Android 13ベース)からColorOS 14 (Android 14ベース)へのアップデートされた。

アプリごとの通知状況

前提:

  • ColorOS 11はFind X2 Pro, ColorOS 13/14はFind X6 Proのもの
  • ColorOS 11/13/14はAndroidの同バージョンがベースになっている1
  • 純Androidの端末は11までしか持っていないため、最新のAndroidでの検証はできていない
  • ColorOS 13/14は、設定でちゃんと通知されるようにした上で検証
  • LINEやSkypeは入れてないのでわからない
  • pullかpushかは推定(一部は確定)である

動作の表記:

  • OK: ちゃんと通知される
  • 不安定: 通知されなかったり、大幅に遅延したりする
  • 活動時: アプリケーションが起動しているときのみ通知される
  • 表: フォアグラウンドでアクティブになっているときのみ通知される
  • 無効: 全く通知されない
アプリ 通知タイプ COS 11 COS 13 COS 14
Telegram Push OK OK 活動時
Wire Push OK 不安定 活動時
Session Push OK 活動時 活動時
Threema Push OK 不安定 活動時
MEGA(sync/chat) Push OK 不安定 活動時
Discord Push OK OK 活動時
Mattermost Push OK 活動時 無効
Slack Push 不安定 活動時 無効
Aqua Mail2 Pull OK OK3 不安定
Husky4 Pull OK OK -
Yuito Push 活動時 活動時 活動時
Yukari Pull 活動時 活動時 表
Moshidon Push 活動時 活動時 活動時
PWA5 Push 不安定 活動時 表
SMS(メッセージ) 特殊 OK 不安定 不安定
DMM TV Push OK 不安定 活動時
YouTube Push 不安定 不安定 不安定
J SPORT Push 不安定 不安定 無効

つまり……

  • ColorOS 11の場合、基本的に通知を許可していればプッシュ通知はだいたい届く
  • ColorOS 13は自分で設定する必要がある上に、アプリを起動しなくても通知が届くのはごく一部だけ
  • ColorOS 14は、アプリが停止しているとどうやっても通知が届かない。新着がないか片っ端からアプリ起動する必要がある

ColorOS 14は13以上に裏のタスクをすぐ止めてしまうため、「活動時」になってるやつも、やりとりしていて、一旦離れて別のアプリ使ってるくらいなら通知されるけど、ほとんどの場合通知される余地がない。 やりとりしてるときにホームに戻ってから画面オフにしたら、それだけで届かない可能性が高い。

そして、なにをどうやったところで、置きっぱなしにしたColorOS 14端末で通知が鳴ることはない。 素Android 14端末を持っていないため、他のAndroidがどうなのかわからないが、これはかなり致命的だ。 通知は「見ていないときに注意を引くためのもの」であって、アプリがアクティブな状態であればアプリの通知欄を見ればいいだけの話だからまるで意味がない。 通知がウザすぎるというのはわからないでもないが、オプトアウトで十分だと思うし、オプトインしても通知がこないというのはいくらなんでもやりすぎだ。

バッテリーの最適化

最近のAndroidにあるらしい、「バッテリーの自動最適化」という項目。 ColorOS 13のときは少なくとも同名の項目はなかったのだが、ColorOS 14になって「バッテリーの使用の最適化」という設定項目が生えた。

これが通知に影響するという説明があったため、これについても試してみた。 主にメッセンジャー系のアプリについて、「最適化しない」を選択して、通知をテストする。

この効果は、アプリを閉じていない状態のときに、アクティブ状態を維持するものだった。 つまり、アプリを閉じずにホームナビゲーションなどでホームに戻ったり、あるいはアプリを開いたままスリープにした場合に、アプリを自動的に閉じないというものだ。 ただし、明示的に閉じなければアクティブのままでいつづけるというわけではなく、スマートフォン側の機能によって閉じられてしまうことがある。 Find X6 Proの場合、ゲームを起動するとメモリ解放するようになっているため、これによって閉じられる。

アプリが閉じられていなければ「活動時」にあたるため、通知はくる。 しかし、習性にもよるが、私はアプリの利用を終えたらアプリを閉じてホームに戻るため、この「最適化」による影響はわずかであった。

しかしどうも、「バッテリーもち」が理由であるっぽいことが見えてくる。そこで探すと「設定→バッテリー→その他の設定→アプリのバッテリー使用状況→(個別のアプリ)」と進むと「バックグラウンドアクティビティを許可」「自動起動を許可」という項目がある。

ここまでオンにすると、非常に不安定だが通知が来ることもあるようだ。

ただし、いくつか問題がある。

まず、そもそも自動起動を許可できるアプリケーションが最大5つと限定されていること。 「メッセージ」と認識されているものは別枠だが、ここに入るのはTelegramとDiscordだけ。 このため、通知できるアプリは最大で5つまでということになる。

アプリによっては自動起動をオンにしても通知は非常に不安定なまま。

Threemaはカテゴリが「トーク」である通知について、ランダムなIDが振られており、これが結構な頻度で変わるようになっている。 そして、これが変わるごとに通知設定がリセットされてしまうため、音を鳴らすことができない。

マイレージ性能は大事だが、存在意義を失うほど機能制限してマイレージ性能を伸ばそうとするのは本末転倒ではないか。 そして、ここまで奥まったところに隠された設定をいじる人はごく稀だろうから、通知は現実的に不可能な状態なのではないか。

あるいは、「メッセージ」であると認識されたアプリに関しては自動起動はデフォルトでオンになっていたりするから、それで問題ない……と考えるのかもしれないけれど、実際は自動起動をオンにしてもバッテリー最適化がオンだと通知は来ない。 そして、Wire, Threema, Session, Mattermost, Slackなどはこの「メッセージ」にも分類されず、大抵のアプリは通知する術がない。 仮にアプリ側で通知をオンにする方法を説明したところで、自動起動をオンにできるアプリは5つまでだから機能的に制限されていると言って良い。

また、Find X2 Proとの通知の問題の違いが自動起動にあるかというとそんなことはなく、X2 Proでは自動起動がオフになっててもちゃんと通知される。

また、バッテリーマイレージのために地震速報すらデフォルトでオフになっているし、それが推奨の設定であるらしい。

地震速報をオフにするのが推奨

まとめ

  • 新しくなるほど通知されなくなっているのは間違いない
  • 最新のColorOSだと通知はほぼないも同然
  • 「通知をオンにする」「通知の着信音をオンにする」「対応する種別の通知に着信音を設定する」「バッテリー最適化をオフにする」「バックグラウンドアクティビティを許可する」「自動起動を許可する」までやれば通知がくる場合はある
  • 通知の種別はどれがお目当てのものなのかすごく分かりにくい
  • そんなことをする人はほとんどいないだろうから、通知はできないも同然
  • 自動起動を許可できるアプリは5つまでで、がんばって設定しても
  • このようになっている主な理由はバッテリーマイレージらしい
  • SMSですら通知がなかなかこないこともある
  • スマートフォンとして最も重要な部分が機能しない……
  • 素Androidの挙動はわからない
  • Threemaは問題ありすぎ

  1. ColorOSのバージョンとAndroidのバージョンが常に等しいわけではない。↩︎

  2. 定期的に起動してポーリングする仕組み。↩︎

  3. 端末自体がスリープしていると通知が更新されない。↩︎

  4. 常にワーカーを起動し、ポーリングし続ける。尋常じゃないほどバッテリーを消耗する。↩︎

  5. ウェブブラウザはVivaldiを使っている↩︎