File: IPowerManager.aidl

package info (click to toggle)
android-platform-frameworks-base 1%3A14~beta1-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 326,084 kB
  • sloc: java: 2,032,373; xml: 343,016; cpp: 304,181; python: 3,683; ansic: 2,090; sh: 1,871; makefile: 120; sed: 19
file content (137 lines) | stat: -rw-r--r-- 6,192 bytes parent folder | download | duplicates (2)
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/* //device/java/android/android/os/IPowerManager.aidl
**
** Copyright 2007, 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.
*/

package android.os;

import android.os.BatterySaverPolicyConfig;
import android.os.ParcelDuration;
import android.os.PowerSaveState;
import android.os.WorkSource;
import android.os.IWakeLockCallback;

/** @hide */

interface IPowerManager
{
    void acquireWakeLock(IBinder lock, int flags, String tag, String packageName, in WorkSource ws,
            String historyTag, int displayId, IWakeLockCallback callback);
    void acquireWakeLockWithUid(IBinder lock, int flags, String tag, String packageName,
            int uidtoblame, int displayId, IWakeLockCallback callback);
    @UnsupportedAppUsage
    void releaseWakeLock(IBinder lock, int flags);
    void updateWakeLockUids(IBinder lock, in int[] uids);
    oneway void setPowerBoost(int boost, int durationMs);
    oneway void setPowerMode(int mode, boolean enabled);

    // Functionally identical to setPowerMode, but returns whether the call was successful
    boolean setPowerModeChecked(int mode, boolean enabled);

    void updateWakeLockWorkSource(IBinder lock, in WorkSource ws, String historyTag);
    void updateWakeLockCallback(IBinder lock, IWakeLockCallback callback);
    boolean isWakeLockLevelSupported(int level);

    void userActivity(int displayId, long time, int event, int flags);
    void wakeUp(long time, int reason, String details, String opPackageName);
    @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553)
    void goToSleep(long time, int reason, int flags);
    @UnsupportedAppUsage(maxTargetSdk = 28)
    void nap(long time);
    float getBrightnessConstraint(int constraint);
    @UnsupportedAppUsage
    boolean isInteractive();
    boolean isPowerSaveMode();
    PowerSaveState getPowerSaveState(int serviceType);
    boolean setPowerSaveModeEnabled(boolean mode);
    BatterySaverPolicyConfig getFullPowerSavePolicy();
    boolean setFullPowerSavePolicy(in BatterySaverPolicyConfig config);
    boolean setDynamicPowerSaveHint(boolean powerSaveHint, int disableThreshold);
    boolean setAdaptivePowerSavePolicy(in BatterySaverPolicyConfig config);
    boolean setAdaptivePowerSaveEnabled(boolean enabled);
    int getPowerSaveModeTrigger();
    void setBatteryDischargePrediction(in ParcelDuration timeRemaining, boolean isCustomized);
    ParcelDuration getBatteryDischargePrediction();
    boolean isBatteryDischargePredictionPersonalized();
    boolean isDeviceIdleMode();
    boolean isLightDeviceIdleMode();
    boolean isLowPowerStandbySupported();
    boolean isLowPowerStandbyEnabled();
    void setLowPowerStandbyEnabled(boolean enabled);
    void setLowPowerStandbyActiveDuringMaintenance(boolean activeDuringMaintenance);
    void forceLowPowerStandbyActive(boolean active);

    @UnsupportedAppUsage
    void reboot(boolean confirm, String reason, boolean wait);
    void rebootSafeMode(boolean confirm, boolean wait);
    void shutdown(boolean confirm, String reason, boolean wait);
    void crash(String message);
    int getLastShutdownReason();
    int getLastSleepReason();

    void setStayOnSetting(int val);
    void boostScreenBrightness(long time);

    // Do not use, will be deprecated soon.  b/151831987
    oneway void acquireWakeLockAsync(IBinder lock, int flags, String tag, String packageName,
            in WorkSource ws, String historyTag);
    oneway void releaseWakeLockAsync(IBinder lock, int flags);
    oneway void updateWakeLockUidsAsync(IBinder lock, in int[] uids);

    // --- deprecated ---
    boolean isScreenBrightnessBoosted();

    // sets the attention light (used by phone app only)
    void setAttentionLight(boolean on, int color);

    // controls whether PowerManager should doze after the screen turns off or not
    void setDozeAfterScreenOff(boolean on);
    // returns whether ambient display is available on the device.
    boolean isAmbientDisplayAvailable();
    // suppresses the current ambient display configuration and disables ambient display.
    void suppressAmbientDisplay(String token, boolean suppress);
    // returns whether ambient display is suppressed by the calling app with the given token.
    boolean isAmbientDisplaySuppressedForToken(String token);
    // returns whether ambient display is suppressed by any app with any token.
    boolean isAmbientDisplaySuppressed();
    // returns whether ambient display is suppressed by the given app with the given token.
    boolean isAmbientDisplaySuppressedForTokenByApp(String token, int appUid);

    // Forces the system to suspend even if there are held wakelocks.
    boolean forceSuspend();

    const int LOCATION_MODE_NO_CHANGE = 0;
    const int LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF = 1;
    const int LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF = 2;
    const int LOCATION_MODE_FOREGROUND_ONLY = 3;
    const int LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF = 4;
    const int MIN_LOCATION_MODE = 0;
    const int MAX_LOCATION_MODE = 4;

    const int GO_TO_SLEEP_REASON_MIN = 0;
    const int GO_TO_SLEEP_REASON_APPLICATION = 0;
    const int GO_TO_SLEEP_REASON_TIMEOUT = 2;
    const int GO_TO_SLEEP_REASON_LID_SWITCH = 3;
    const int GO_TO_SLEEP_REASON_POWER_BUTTON = 4;
    const int GO_TO_SLEEP_REASON_HDMI = 5;
    const int GO_TO_SLEEP_REASON_SLEEP_BUTTON = 6;
    const int GO_TO_SLEEP_REASON_ACCESSIBILITY = 7;
    const int GO_TO_SLEEP_REASON_FORCE_SUSPEND = 8;
    const int GO_TO_SLEEP_REASON_INATTENTIVE = 9;
    const int GO_TO_SLEEP_REASON_QUIESCENT = 10;
    const int GO_TO_SLEEP_REASON_MAX = 10;
    const int GO_TO_SLEEP_FLAG_NO_DOZE = 1 << 0;

}