Wednesday, October 14, 2015

Background Data and Battery Usage of Facebook’s iOS App

Nick Heer:

Make no mistake: this is user-hostile. Facebook is actively creating channels to continue refreshing their app in the background when the user has explicitly stated that they do not want it to. Ironically, the best way to reduce the battery and data consumption of the Facebook app in the background is to switch Background App Refresh back on.

Federico Viticci:

Every time I take a look at a friend’s iPhone, Facebook is the app with the highest amount of battery usage in the background – even with Background App Refresh turned off. This has been going on for years, and instead of fixing the issue, it does seem like Facebook is always coming up with new ways to circumvent user control and consume more energy.

[…]

With iOS 9’s improved energy consumption stats, it’s easier to guess one of the various tricks Facebook may be employing to stay active in the background and drain battery. On my girlfriend’s iPhone, for instance, iOS 9 reports 5 hours of on-screen usage for the last 7 days, and another 11 hours of background audio usage with Background App Refresh turned off.

My guess is that Facebook is hijacking audio sessions on iOS by keeping silent audio in the background whenever a video plays in the app. And because, by default, videos on Facebook auto-play on both Wi-Fi and Cellular and few people ever bother to turn it off, that means there’s a high chance the Facebook app will always find a way to play a video, keep audio in the background, and consume energy to perform background tasks.

Lee Bennett:

Explains why I always have to force quit FB to regain ringer volume control. GRR.

Previously: iOS Background App Kludge.

Update (2015-10-14): Landon Fuller:

Where are the appstore reviewers? We’d need a jailbreak to independently investigate/confirm what they’re doing on our phones.

Update (2015-10-23): Ari Grant (via Paul Haddad, comments):

The first issue we found was a “CPU spin” in our network code. […] This repeated processing causes our app to use more battery than intended. The version released today has some improvements that should start making this better.

The second issue is with how we manage audio sessions. If you leave the Facebook app after watching a video, the audio session sometimes stays open as if the app was playing audio silently. This is similar to when you close a music app and want to keep listening to the music while you do other things, except in this case it was unintentional and nothing kept playing.

Update (2015-10-27): Nick Heer:

My understanding of the media APIs in iOS is that they will suspend operation when the app is backgrounded unless explicitly told to keep running. […] Whatever the case, it’s not working for Nate Boateng.

John Gruber:

Via Twitter, a few DF readers claim that the new version of the Facebook app still consumes a lot of energy in the background, even with background refresh disabled in Settings: General: Background App Refresh.

4 Comments RSS · Twitter

[…] also: Background Data and Battery Usage of Facebook’s iOS App, The Facebook App’s 18,000 […]

[…] Previously: The Force Quit Fallacy, Background Data and Battery Usage of Facebook’s iOS App. […]

[…] Background Data and Battery Usage of Facebook’s iOS App […]

[…] Background Data and Battery Usage of Facebook’s iOS App […]

Leave a Comment