BookPlayer icon indicating copy to clipboard operation
BookPlayer copied to clipboard

Bug: BookPlayer consumes too much energy after updating to iOS 16

Open EugeneTarasenko opened this issue 3 years ago • 1 comments

Environment

  • OS Version: 16.0.2
  • App Version: 4.7.0-3
  • Phone: iPhone 8

Description

BookPlayer consumes too much energy after updating to iOS16. It drains all my battery in just ≈3.5 hours with a locked screen.

Screenshots:

IMG_0641 IMG_0642 IMG_0643 IMG_0644

EugeneTarasenko avatar Oct 09 '22 04:10 EugeneTarasenko

I'm not sure this is entirely related to BookPlayer, but rather to iOS 16 poor battery performance. In any case I did three different tests for this on my 13 mini running iOS 16.0.2 using Xcode's energy performance information

App launch

https://user-images.githubusercontent.com/14112819/194764758-6c0fc4c4-b92b-4ec3-a45c-8e9f3685b326.mov

just playback (at 4x speed)

https://user-images.githubusercontent.com/14112819/194764780-469b4e41-532c-44ce-af3f-705f5721c6f5.mov

app launch + playback (at 4x speed with mp3 chapter change)

https://user-images.githubusercontent.com/14112819/194764811-dc998db9-a18f-4d06-b40a-81fe5d70a425.mov

When the app is launched from zero, there are two (non-essential) things that require network connectivity, the first one is the SwiftyStoreKit dependency which is periodically checking if there are any pending donations transactions to complete. And the second one is the Sentry.io dependency which is used to report crash data for bugs. Both start up the cellular antenna which has a lot of overhead as seen on the first video, but the network data stops around the 10 sec mark and the overhead drops down at around the 20 secs mark after a cold start

The second video is only about playback, I unlocked the phone to scroll down and start one of the books at the highest speed to put pressure on the CPU, I think the highest recorded is 5% of CPU usage right when one of the mp3 files is finished, and the next one is loaded, then it drops down to 2%-3%

The third video is the app launching from a cold start, and starting right away the book, and the energy impact follows the same trend as the first one, after the 20 secs mark, the overhead drops off, and just the cpu usage of playback is left.

I did the test with 4x, as the more heavy operations that occur during playback, is saving the progress to disc, and loading up the next audio file to the player

Any feedback or input is welcomed though

GianniCarlo avatar Oct 09 '22 15:10 GianniCarlo

Hey, I have the same issue with BookPlayer 5.0.1-2 on iPhone XS with iOS 16.5.1, with the application running in the background and the screen locked/off.

I can tell whether I'm using VLC or BookPlayer to play an audiobook by the fact that the phone gets noticeably warm in my pocket when BookPlayer is used (with the associated battery drain).

jstasiak avatar Jul 01 '23 23:07 jstasiak

I have an update for this ticket, I think v5 may have exacerbated this issue, as I updated Sentry (which we use for crash reports) to its latest SDK, and after going through the docs, they enabled by default performance analysis when fetching or storing data from/to the local database, and also File I/O performance. For v5.0.2 I disabled those explicitly, and for the v5.0.3 (which is currently waiting for review on the AppStore), I've improved (or throttled any unnecessary) sync operations for those with cloud sync enabled

I'll continue monitoring and see what else can be improved

GianniCarlo avatar Jul 01 '23 23:07 GianniCarlo

iPhone 13 mini, iOS 16.6. BookPlayer 5.0.7-3.

I'm having the same issues with almost all the files I'm trying to play. BookPlayer can chew through my whole battery with a 100% charge within 1.5 hours. Phone gets so hot that the battery won't charge. I can provide audio file samples if it's helpful or any other debugging information. Hopefully this gets addressed sooner than later. In the meantime I guess I'll have to find another app, which is a shame because aside from the massive CPU usage that app is fantastic!

Gerk avatar Aug 08 '23 15:08 Gerk

Following up on this ticket, v5.0.9 is currently live on the AppStore, in that version, we included a new Privacy section in Settings, from where Sentry.io can be disabled completely

Please let me know (anyone), if disabling it has any noticeable impact on the battery life while listening

GianniCarlo avatar Sep 07 '23 03:09 GianniCarlo

I'll try it tonight and let you know.

rstewa avatar Sep 07 '23 03:09 rstewa

There's a new beta with a performance improvement on how we recalculate the parent folder progress (link to join: https://testflight.apple.com/join/xLDneJXN), please let me know if it helps with battery health

GianniCarlo avatar Sep 12 '23 15:09 GianniCarlo

@rstewa @Gerk @jstasiak @EugeneTarasenko v5.1.0 is live now with a possible fix for this, please let me know how it goes

GianniCarlo avatar Nov 21 '23 03:11 GianniCarlo

Got confirmation on #1000 and we finally have the fix on v5.1.0 for this issue 🎉, feel free to continue the conversation if you're still experiencing this

GianniCarlo avatar Nov 24 '23 12:11 GianniCarlo