Developers will publish ways to optimize battery consumption for Android applications


There are apps etc which make battery reduction faster oddly but slides incorporating various knowledge on battery consumption of Android application so that developers of such applications can optimize the battery consumption of the applicationBattery Optimization for Android Apps"ButSlideShareIt is open to the public.

Battery Optimization for Android Apps - Devoxx 14

It is the Android application developers that publish this slide@maydintrMr.

Batteries are required to move smartphones and tablets, and terminals consume as much power as they do important tasks. So, no matter how good the application is made, if the application consumes batteries, it will be badly evaluated at the app stores and so on.

As a solution to the battery problem, there are "increase the battery capacity", "purchase a case with an external battery", "carry a mobile battery," "carry a solar panel", etc. These are fundamental solutions I can not say that.

Be a Google software engineerJeff SharkeyThe graph showing the battery usage of the Android terminal listed in Mr. presentation materials is as follows.

For example, if your terminal has a battery capacity of 1150 mAh, you need 340 mA of current by watching YouTube movies, so if you look at the movie for 3.4 hours the battery will be empty. Web browsing on 3G lines requires 225 mA, which means that the battery runs out in just 5 hours. In the airplane mode, 2 mA is required, so it seems that the battery will be on for 24 days as well.

Also, when transferring 6 MB of data,EDGE· Depending on which 3G / Wi-Fi communication method is used to transfer data, the discharge capacity will differ as follows. It seems that Wi-Fi is the most battery friendly among the three.

American Purdue University went in 2012Investigation, 25 to 35% of the discharge capacity when you play free chess apps and "Angry Birds" etc is necessary for playing the game, the remaining 65 to 75% It is being used to display advertisements that are uploaded and distributed on the screen.

The difference in transfer between bundle and unbundled is like this. If it is data communication with unbundleIdle stateThere is no way to become. As a result, it becomes necessary to communicate while consuming a lot of power for a long time.

PrefetchIs an operation that reads data that the computer is likely to use beforehand into memory and improves performance. This allows you to reduce the number of items to download or to reduce the latency of the application.

cacheIt is as large as possible, but it seems that exquisite adjustment is necessary so that old data is not left.

Let's compress the data firmly.

The time required for data analysis depends on whether you compress the data or send it as it is.

In addition, it seems necessary to monitor the user's battery situation to the utmost, and to observe points where the battery capacity changes drastically. Application updates consume a lot of battery of the device, but if the update is delivered during the time the device is charging does not happen that the battery of the device will not be unnecessarily reduced, so the user You should be saved. It seems important to keep these points low and adjust so that battery consumption will be less updated when battery is low.

The application sometimes notifies the Android OS "Do not sleep now", but I call it "Wakelock".

Instead of using "keepScreenOn", it helps to reduce battery consumption.

In addition, tools for developers who diagnose power consumption etc. of Android applicationTrepn ProfilerThere is also a means to use.

By accumulating these, @ maydintr could improve the battery consumption of the application by as much as 20%.

in Mobile,   Software, Posted by logu_ii