Nexusの名を冠するデバイスをお持ちの方は、既にAndroid 6.0 Marshmallowの開発者版や、Android 5.0 Lollipop最新版リリース・ビルドをお使いのことだろう。 そのAndroid 5.1.1 build LMY48Iから、タスクマネージャー(タスクキラー)系アプリやプロセスの情報を取得する一部のバッテリー計測アプリが軒並み正しく動かなくなり、ちょっとした話題となっている。従来どおりの利用ができなくなったアプリのGoogle Playレビュー欄では、「使えなくなった」といった苦情が多く寄せられている状況だ。
多くのタスクマネージャーが使えなくなった理由
正常に動作しなくなっているアプリに共通しているのは、稼働しているプロセスの情報を取得する必要がある点だ。プロセスとはアプリが動いている状態のこと。タスクマネージャー系アプリは、アプリを終了させてメモリを解放するために、プロセスの情報を取得する必要がある。 このことから推測できるように、従来どおりの利用ができなくなった理由は、タスクマネージャーがプロセスの状態を取得する部分にGoogleが手を入れたためだ。Googleによれば、この変更はセキュリティを向上させるために実施されたとのこと。その結果、今までの方法を使用してプロセス一覧を呼び出そうとしても、サードパーティ製アプリは自分自身以外のアプリの情報を取得することができなくなり、目的を果たせなくなったわけだ。 Androidの柔軟性を生かし、バッテリーの減りを気にしてアプリケーションを止めていたユーザーや、ハングアップしてしまったソフトを完全にメモリから消し去るためにタスクマネージャー系のアプリを使っていたユーザーにとっては、残念な変更かもしれない。もっとも、Androidのセキュリティ向上ないしプライバシー保護の観点からは、歓迎される動きだといえる。
今後、どうなる
開発が活発におこなわれている一部のアプリでは既に対応が始まっているが、対応の仕方には若干の違いがあるようだ。 一般的な対応をおこなったアプリは、設定メニュー内の「セキュリティ」>「使用履歴にアクセスできるアプリ」の項目に表示される。使用履歴へのアクセスを有効にすると、プロセスに関する情報を取得できるようになり、アプリを終了させることが可能だ。この項目に表示されることなくプロセス一覧を取得しているアプリもあるが、それらは推奨されない機能を使用している可能性もある。
いずれにせよ、Android 6.0 Marshmallowを含むAndroid 5.1.1 build LMY48I以降のバージョンでは、今までのように一般的なアプリがプロセス関連の情報などを取得することは難しくなる。一方で、バージョンアップされないまま放置気味のタスクマネージャー系アプリは数多く存在する。そのため、そういったアプリのユーザーは、自分が使用しているアプリの作者に対応をお願いしてみる、または、新しいアプリを探す必要性が出てくるだろう。 現在、筆者がAndroid 5.1.1 build LMY48Iでの動作を確認しているタスクマネージャーは、「SystemPanelLite」や「高級タスクマネージャー (Advanced Task Manager)」など。また、バッテリーの使用履歴とプロセスの稼働をあわせて表示してくれる定番アプリ「Battery Mix」も対応を済ませている。 Android 5.1.1 build LMY48I以降のバージョンがキャリア端末を使用しているユーザーの手に届くのは、まだまだ先だと考えられるため、当面の影響は軽微に留まるだろう。しかし、Nexus端末を使用しているユーザーは、自分が使用しているアプリの動向を注意深く見守る必要性がありそうだ。