1 /* //device/java/android/android/os/IPowerManager.aidl
2 **
3 ** Copyright 2007, The Android Open Source Project
4 **
5 ** Licensed under the Apache License, Version 2.0 (the "License");
6 ** you may not use this file except in compliance with the License.
7 ** You may obtain a copy of the License at
8 **
9 **     http://www.apache.org/licenses/LICENSE-2.0
10 **
11 ** Unless required by applicable law or agreed to in writing, software
12 ** distributed under the License is distributed on an "AS IS" BASIS,
13 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ** See the License for the specific language governing permissions and
15 ** limitations under the License.
16 */
17 
18 package android.os;
19 
20 import android.os.WorkSource;
21 
22 /** @hide */
23 
24 interface IPowerManager
25 {
26     // WARNING: The first five methods must remain the first five methods because their
27     // transaction numbers must not change unless IPowerManager.cpp is also updated.
acquireWakeLock(IBinder lock, int flags, String tag, String packageName, in WorkSource ws, String historyTag)28     void acquireWakeLock(IBinder lock, int flags, String tag, String packageName, in WorkSource ws,
29             String historyTag);
acquireWakeLockWithUid(IBinder lock, int flags, String tag, String packageName, int uidtoblame)30     void acquireWakeLockWithUid(IBinder lock, int flags, String tag, String packageName,
31             int uidtoblame);
releaseWakeLock(IBinder lock, int flags)32     void releaseWakeLock(IBinder lock, int flags);
updateWakeLockUids(IBinder lock, in int[] uids)33     void updateWakeLockUids(IBinder lock, in int[] uids);
powerHint(int hintId, int data)34     oneway void powerHint(int hintId, int data);
35 
updateWakeLockWorkSource(IBinder lock, in WorkSource ws, String historyTag)36     void updateWakeLockWorkSource(IBinder lock, in WorkSource ws, String historyTag);
isWakeLockLevelSupported(int level)37     boolean isWakeLockLevelSupported(int level);
38 
userActivity(long time, int event, int flags)39     void userActivity(long time, int event, int flags);
wakeUp(long time, String reason, String opPackageName)40     void wakeUp(long time, String reason, String opPackageName);
goToSleep(long time, int reason, int flags)41     void goToSleep(long time, int reason, int flags);
nap(long time)42     void nap(long time);
isInteractive()43     boolean isInteractive();
isPowerSaveMode()44     boolean isPowerSaveMode();
setPowerSaveMode(boolean mode)45     boolean setPowerSaveMode(boolean mode);
isDeviceIdleMode()46     boolean isDeviceIdleMode();
47 
reboot(boolean confirm, String reason, boolean wait)48     void reboot(boolean confirm, String reason, boolean wait);
shutdown(boolean confirm, boolean wait)49     void shutdown(boolean confirm, boolean wait);
crash(String message)50     void crash(String message);
51 
setStayOnSetting(int val)52     void setStayOnSetting(int val);
boostScreenBrightness(long time)53     void boostScreenBrightness(long time);
isScreenBrightnessBoosted()54     boolean isScreenBrightnessBoosted();
55 
56     // temporarily overrides the screen brightness settings to allow the user to
57     // see the effect of a settings change without applying it immediately
setTemporaryScreenBrightnessSettingOverride(int brightness)58     void setTemporaryScreenBrightnessSettingOverride(int brightness);
setTemporaryScreenAutoBrightnessAdjustmentSettingOverride(float adj)59     void setTemporaryScreenAutoBrightnessAdjustmentSettingOverride(float adj);
60 
61     // sets the attention light (used by phone app only)
setAttentionLight(boolean on, int color)62     void setAttentionLight(boolean on, int color);
63 }
64