aboutsummaryrefslogtreecommitdiff
path: root/en/devices/tech/power/mgmt.html
blob: 44e17784b561540f97b253d4189a32229bd3dbae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<html devsite>
  <head>
    <title>Power Management</title>
    <meta name="project_path" value="/_project.yaml" />
    <meta name="book_path" value="/_book.yaml" />
  </head>
  <body>
  <!--
      Copyright 2017 The Android Open Source Project

      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
  -->



<p>Battery life is a perennial user concern. To extend battery life, Android
continually adds new features to help the platform optimize the off-charger
behavior of applications and devices.</p>
<p>Android includes the following battery life enhancements:</p>

<ul>
  <li>
    <a href="/devices/tech/power/app_mgmt#app-restrictions">App Restrictions</a>.
    The platform can suggest apps that negatively affect battery life, so
    that users can choose to restrict those apps from consuming resources. Apps
    are not background restricted by default.
  </li>
  <li><a href="/devices/tech/power/app_mgmt#app-standby">App Standby</a>. The
    platform can place unused applications in App Standby mode, temporarily
    restricting network access and deferring syncs and jobs for those
    applications.
  </li>
  <li>
    <a href="/devices/tech/power/platform_mgmt#doze">Doze</a>. The platform can
    enter a state of deep sleep (periodically resuming normal operations) if
    users have not actively used their device (screen off and stationary) for
    extended periods of time. Android 7.0 and later also enables Doze to
    trigger a lighter set of optimizations when users turn off the device
    screen yet continue to move around.
  </li>
  <li>
    <a href="#exempt-apps">Exemptions</a>. Preloaded system apps and cloud
    messaging services are typically exempted from App Standby and Doze by
    default. App developers can use Intents to apply these settings to their
    apps. Users can exempt apps from App Standby and Doze power-saving modes
    in the Settings menu.
  </li>
</ul>

<h2 id="exempt-apps">Exempting applications</h2>
<p>You can exempt applications from being subject to Doze or App Standby.
Exemptions may be needed in the following use cases:</p>
<ul>
<li>Device manufacturers using a Cloud Messaging platform other than
<a href="https://firebase.google.com/docs/cloud-messaging/" class="external">Firebase
Cloud Messaging</a> (FCM).</li>
<li>Carrier using non-FCM Cloud Messaging platform</li>
<li>Third-party application using non-FCM Cloud Messaging platform</li>
</ul>

<p class="warning"><strong>Warning</strong>: Do not exempt apps to avoid testing
and optimizing. Unnecessary exemptions undermine the benefits of Doze and App
Standby and can compromise the user experience, so we strongly suggest
minimizing such exemptions as they allow applications to defeat beneficial
controls the platform has over power use. If users become unhappy about the
power consumption of these apps, it can lead to frustration, bad experiences
(and negative reviews for the app), and customer support questions. For these
reasons, we strongly recommend that you do not exempt third-party applications
and instead exempt only cloud messaging services or apps with similar
functions.</p>

<p>Apps exempted by default are listed in <em>Settings > App &amp;
  Notifications > Special app access > Battery Optimization</em>. This list is
  used for exempting the app from both Doze and App Standby modes. To provide
  transparency to the user, the Settings menu <strong>MUST</strong> show all
exempted applications.</p>

<p>Users can manually exempt apps via <em>Settings > App &amp; Notifications >
<var>APP-NAME</var> > Battery > Battery Optimization</em> and then selecting the
app to turn off (or back on) optimization. However, users cannot unexempt any
application or service that is exempted by default in the system image.</p>

  </body>
</html>