電車で隣の人のスマホがふと目に入る。アプリの一覧を出して、上へ、上へ、上へ。十数枚のカードを1枚ずつ弾き飛ばして、何もなくなった画面を確かめてからポケットにしまう。
「使い終わったアプリは閉じておかないと、裏で電池を食う」。スマホが出始めたころから、あちこちで言われてきた話です。パソコンでは、ソフトを閉じればメモリが空いて動きが軽くなります。その経験がそのままスマホに持ち込まれたんだと思います。
ところが、いまのiPhoneとAndroidの説明は逆を向いています。Appleは、アプリを終了した方がいいのは「アプリが反応しなくなったときだけ」と書いていて、使っていないアプリを終了してもバッテリー駆動時間は延びない、とまで言い切っています。Androidも、使っていないアプリの片付けはOSが自分でやる作りです。
この記事では、タスクキル(アプリの強制終了)が電池持ちに効かない理由と、それでも閉じたほうがいい場面、本当に電池を食っているアプリの見つけ方をまとめます。
毎回全部閉じる習慣は、やめてしまってかまわないと私は思っています。1日に何十回もスワイプする手間がかかるのに、電池の持ちは変わらない。電池が気になるなら、見るべきなのはアプリの一覧ではなく、「設定」の「バッテリー」の画面です。
Appleは「反応しないときだけ」と書いている
Appleのサポートページには、アプリの終了方法が機種ごとに載っています。その冒頭に置かれているのがこの一文です。
アプリを終了した方がいいのは、アプリが反応しなくなったときだけです。
iPhoneのユーザガイドにも、同じ方向の説明があります。こちらは電池にまで踏み込んでいます。
iPhoneでは、アプリのバックグラウンド実行が自動的に管理されているため、使用していないアプリを終了してもバッテリー駆動時間は延びません。
「延びにくい」でも「あまり変わらない」でもなく、「延びません」。メーカーが自社製品の使い方について、ここまではっきり否定するのは珍しいことです!
ホーム画面の下から上へスワイプして途中で止めると出てくる、あのアプリの一覧。あれは「いま動いているアプリ」の一覧ではありません。最近使ったアプリを、すぐ戻れるように並べたものと考えたほうが実態に近いです。並んでいるからといって、その全部が電池を使っているわけではありません。
Androidは最初から「閉じなくていい」作りだった
Androidのほうは、もっと早い時期から同じことを言っています。2010年4月、Googleの開発者向けブログに「Multitasking the Android Way」という記事が載りました。アプリの切り替えの仕組みを開発者に向けて説明したもので、そこには、利用者にアプリを閉じることを気にさせたくない、どのアプリもいつも動いているように見せたい、という設計の考え方が書かれています。
いまの開発者向けドキュメントでも、この考え方は変わっていません。Androidは、画面から離れたアプリをすぐには終わらせず、キャッシュに置いておきます。
ユーザーが後でアプリに戻ると、システムはプロセスを再利用するため、アプリの切り替えが速くなります。
では、置きっぱなしにしてメモリがいっぱいになったらどうなるのか。これもシステムの仕事です。メモリなどが足りなくなると、Androidはキャッシュに置いたアプリを自分で終了させて場所を空けます。
片付けは、利用者がやらなくてもOSがやっています。一覧に10枚並んでいても20枚並んでいても、必要ならOSが勝手に減らす。人の手で先回りして消す必要は、設計の段階から想定されていません。
参考:Android Developers「メモリ管理の概要」
閉じると、次に開くときの仕事が増える
タスクキルが効かないだけならまだいいのですが、見方によっては逆効果です。
アプリの起動には、ゼロから立ち上げる「コールドスタート」と、裏に残っていたものを前に出すだけの起動があります。Androidの開発者向けドキュメントは、コールドスタートについて「システムとアプリは他の起動状態よりも多くの作業を行う必要がある」と説明しています。
毎回閉じるということは、次に開くたびに、このいちばん手間のかかる起動を自分から選んでいるのと同じです。読み込みの画面を待つ時間が延びて、そのぶん処理も走る。電池のために閉じたつもりが、次に開くときの仕事を増やしているわけです。
どれくらい電池の減りが変わるのかは、機種やアプリによって違うので、数字では言えません。ただ、少なくとも「閉じれば閉じるほど電池が持つ」という話にはなりません。
参考:Android Developers「アプリの起動時間」
それでも閉じたほうがいい場面
強制終了が役に立つ場面もあります。Appleが書いている「反応しなくなったとき」がまさにそれで、たとえば次のような状態です。
- 画面が固まって、タップしても何も起きない
- 読み込みの表示のまま、いつまでも先に進まない
- 開くたびに、すぐ落ちてホーム画面に戻される
こういうときは、一度終了してから開き直すと直ることがあります。Appleの案内では、それでも直らなければ次はiPhoneの再起動です。
もう1つは、裏で動いているのが自分でも分かっているアプリです。音楽の再生、地図のナビ、走った距離を記録し続けるフィットネス系のアプリ。これらはバックグラウンドで本当に仕事をしているので、止めれば電池の消費も止まります。
閉じる意味があるのは「裏で何かをしているアプリ」だけで、一覧に並んでいるだけのアプリとは話が別です。ただしその場合も、音楽ならアプリの中で一時停止、ナビなら案内の終了で足ります。わざわざ一覧から弾き飛ばさなくても、止まるものは止まります。
参考:Apple「iPhoneやiPod touchでアプリを終了する方法」
本当に電池を食っているアプリの見つけ方
電池の減りが気になるなら、閉じるより先に、どのアプリが電池を使っているかを確かめるほうが早いです。見る場所はiPhoneもAndroidも「設定」の中にあります。
iPhoneの場合
- 「設定」を開く
- 「バッテリー」をタップする
- 「1日の使用状況」のグラフの下にある、アプリとシステムのアクティビティの使用状況を見る
- 全部を見るときは「すべてのバッテリー使用状況を表示」をタップする
アプリ名をタップすると、使われ方の内訳が出ます。「バックグラウンド処理」が大きいアプリは、画面に出ていないあいだも動いて電池を使っていたということです。閉じる候補があるとしたら、この画面で名前が挙がったアプリだけです。
Androidの場合
- 「設定」を開く
- 「バッテリー」をタップする
- 「バッテリー使用量」で、アプリごとの消費を見る
消費の多いアプリが見つかったら、そのアプリのバックグラウンドでの動作を制限できます。Googleのヘルプも、電池を長持ちさせる方法として、バッテリー消費量が多いアプリを制限することと、自動調整バッテリーをオンにすることを挙げています。
画面の表記はメーカーや機種によって少しずつ違います。見当たらないときは、設定アプリの検索欄に「バッテリー」と入れると早いです。
参考:Android ヘルプ「Android デバイスの電池を長持ちさせる」
なぜ「閉じる」が常識になったのか
「閉じるのが常識」になった理由は、パソコンの経験がそのまま持ち込まれたからだと私は考えています。パソコンでは、開いたソフトは閉じるまで動き続け、メモリも使い続けます。重くなったらソフトを閉じる。これはいまのパソコンでも正しい対処です。
スマホのアプリの一覧も、カードが何枚も重なっていると、それだけのアプリが同時に動いているように見えます。しかも、閉じた直後は一覧が空っぽになって、何かを片付けた手応えだけは残る。効いている気がするのに、実際には何も変わっていない…。習慣として残りやすい形です。
もう1つ、実際に効く場面があったことも大きいと思います。固まったアプリは、閉じて開き直せば直る。この成功体験が「とりあえず閉じる」を支えてきたのでしょう。ただ、それは不具合への対処で、電池の節約とは別の話です。
まとめ
アプリを毎回閉じても、電池は長持ちしません。Appleは「使用していないアプリを終了してもバッテリー駆動時間は延びません」と書き、Androidもアプリをキャッシュに置いて、足りなくなればOSが自分で片付ける作りになっています。
閉じる意味があるのは2つの場面です。反応しなくなったアプリを開き直すときと、音楽やナビのように裏で仕事をしているアプリを止めるとき。一覧に並んでいるだけのアプリは、放っておいてかまいません。毎回閉じれば、次に開くときにゼロから立ち上げる手間が増えるだけです。
「閉じるのが正しい」はパソコンでは今も正しい話で、スマホに持ち込んだところで食い違いが起きました。同じ「アプリの一覧」でも、パソコンは開いているものの一覧、スマホは最近使ったものの一覧です。
電池の減りが気になるなら、見る場所は「設定」の「バッテリー」です。どのアプリが、裏でどれだけ電池を使っているか。そこで名前が挙がったアプリだけを制限すれば足ります。
私は、あの上へ弾き飛ばす動き自体は嫌いではありません。画面がきれいになるのは、それはそれで気持ちがいい。ただ、電池のためだと思って毎回やっているなら、その手間はもう省いてしまっていいと思います。