iOS7の「Appのバックグラウンド更新」をオフにしてはいけない

iOS7の「Appのバックグラウンド更新」をオフにしてはいけない
大事なことなので。

iOS7はバッテリの減りが早い傾向にあるため、iOS7でバッテリを長持ちさせる方法、的なiOS系小ネタブログ記事がたくさんあります。
その中でまず間違いなく取り上げられるのが「Appのバックグラウンド更新」。なぜなら、
“Appをオフにするとバッテリを多少節約できます”って設定画面に書いてあるから。

IMG_2302
そりゃ、↑みたいに書いてあったら「バッテリ節約できるのか。これは小ネタだ!」と記事書いちゃいますよね。「オフにしたらどうなるのか」なんてことは考えることもなくね。うん。

困る。

非常に困る。

困りますよーホントに。
世の中、こういう無責任なこと書くブログが多過ぎて本当困ります。

そういった記事を見て、そうかAppのバックグラウンド更新をオフにするとバッテリを節約できるのか、と安易にオフにするのはちょっと待ってください。
オフにするとどうなるかきちんと理解していますか?
理解しているのならオフにするのも結構でしょう。
そうでないのなら、きちんと理解した上で、自己責任に置いてオフにしてください。
(オフにしましょうほざいてるブログに対抗するためタイトルはわざと扇動的にしてます)

じゃあオフにするとどうなるのかというと
オフにしたアプリはバックグラウンドで何も動作しなくなります。
(ブログによっては「アプリを自動的に最新の状態に保つ」とか超いいかげんなこと書いてたりして本当に困る)

何当たり前のこと書いてるんだと思ってるでしょうが、ここでもうちょっと考えてください。

iOS6までは「音楽を流し続ける」「GPSを記録し続ける」といった限られた用途でのみバックグランドでの動作が許可されていました。iOS7ではこの制限が緩和され、他の用途でもバックグラウンドで動作できるようになっています。

「Appのバックグラウンド更新」をオフにするとこれらのバックグラウンドでの動作が禁止されてしまうので、位置を記録するアプリがバックグラウンドにまわると位置が記録されなくなる、などといったことが起きます。

もともとiPhoneではバックグラウンドでの動作が非常に制限されていたこともあり、バックグラウンドで動作し続けるアプリというのは裏で動き続ける必要性、必然性があるものがほとんどです。Appのバックグラウンド更新をオフにすると、それらのアプリは問答無用でバックグラウンドでの動作が制限されます。オフにするのならその意味をちゃんと考えてからオフにしてください。

私のアプリでは「iOS7になったらバックグラウンドでログが記録出来なくなった!」という不具合報告をいくつも頂きましたが、その全てがこの「Appのバックグラウンド更新」が原因でした。
安易にオフにしないようお願いします。m(_ _)m

更新(2014/02/14)
こちらでご指摘いただいてました。仰る通りでございます。ははーm(_ _)m
iOS7の「Appのバックグラウンド更新」を無効化されたら困る場合はユーザーへ伝えよう http://d.hatena.ne.jp/laiso+iphone/20131209/1386580377
一応言い訳をしておくと、このエントリーを書いた時点ではやんごとなき理由でまだXCode5に上げられなかったため backgroundRefreshStatus が使えなかったのと、あとこのエントリ書いた一番の目的が「バックグランド更新をオフにしたらどうなるかとか考えることなしにバッテリの減りが気になったらオフにしましょう書いちゃってる有象無象のブログエントリに対抗する」という無駄な努力をすることなので、まあ、こんなエントリになってます。ハイ。