Friday, October 23, 2015

How the battery savings features in Android 6 Marshmallow affect Worktime

Android 6 Marshmallow is now available for upgrade on certain phones (to my knowledge, for instance, Nexus 5) and it has some exciting new features. Two new features are Doze and AppStandby, which will reduce the battery consumption of the device.

This is great, and should not have any impact on the Worktime app, but it does and I am currently investigating why and how. Doze disables the Wi-Fi scanning when the phone is stationary, which is good, since your "at work" status will only change when you and your phone are moving. Obviously, there are undocumented changes to the API.

The best way to make sure that Worktime records your time is by opening the app when you have arrived at or left your workplace and wait for the time to update in the app.

Another new improvement in Marshmallow is that permissions are granted at runtime, instead of during installation as before and we can now revoke permissions that we don't want an app to have.

Currently, Worktime use the pre-Android 6 permission system and gets all necessary permissions at installation but this will change in the next release of the app and new users will be asked to grant some permissions when it is being run for the first time.