IBatteryStats.aidl revision 488bb0ed6a6765b5a7c9ee73747ebc9333097267
136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines/* 236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * Copyright (C) 2008 The Android Open Source Project 336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * 436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * Licensed under the Apache License, Version 2.0 (the "License"); 536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * you may not use this file except in compliance with the License. 636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * You may obtain a copy of the License at 736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * 836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * http://www.apache.org/licenses/LICENSE-2.0 936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * 1036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * Unless required by applicable law or agreed to in writing, software 1136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * distributed under the License is distributed on an "AS IS" BASIS, 1236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * See the License for the specific language governing permissions and 1436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines * limitations under the License. 1536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines */ 1636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinespackage com.android.internal.app; 1836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 1936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesimport com.android.internal.os.BatteryStatsImpl; 2036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 2136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesimport android.os.WorkSource; 2236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesimport android.telephony.SignalStrength; 2336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 2436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hinesinterface IBatteryStats { 2536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines // These first methods are also called by native code, so must 2636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines // be kept in sync with frameworks/native/include/binder/IBatteryStats.h 2736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStartSensor(int uid, int sensor); 2836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStopSensor(int uid, int sensor); 2936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines // Remaining methods are only used in Java. 3136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines byte[] getStatistics(); 3236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStartWakelock(int uid, int pid, String name, int type); 3336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStopWakelock(int uid, int pid, String name, int type); 3436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStartWakelockFromSource(in WorkSource ws, int pid, String name, int type); 3636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStopWakelockFromSource(in WorkSource ws, int pid, String name, int type); 3736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines 3836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteVibratorOn(int uid, long durationMillis); 3936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteVibratorOff(int uid); 4036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStartGps(int uid); 4136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteStopGps(int uid); 4236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteScreenOn(); 4336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteScreenBrightness(int brightness); 4436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteScreenOff(); 4536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteInputEvent(); 4636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteUserActivity(int uid, int event); 4736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void notePhoneOn(); 4836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void notePhoneOff(); 4936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void notePhoneSignalStrength(in SignalStrength signalStrength); 5036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void notePhoneDataConnectionState(int dataType, boolean hasData); 5136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void notePhoneState(int phoneState); 5236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiOn(); 5336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiOff(); 5436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiRunning(in WorkSource ws); 5536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiRunningChanged(in WorkSource oldWs, in WorkSource newWs); 5636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiStopped(in WorkSource ws); 5736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteBluetoothOn(); 5836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteBluetoothOff(); 5936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteFullWifiLockAcquired(int uid); 6036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteFullWifiLockReleased(int uid); 6136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiScanStarted(int uid); 6236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiScanStopped(int uid); 6336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiMulticastEnabled(int uid); 6436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiMulticastDisabled(int uid); 6536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteFullWifiLockAcquiredFromSource(in WorkSource ws); 6636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteFullWifiLockReleasedFromSource(in WorkSource ws); 6736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiScanStartedFromSource(in WorkSource ws); 6836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiScanStoppedFromSource(in WorkSource ws); 6936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiMulticastEnabledFromSource(in WorkSource ws); 7036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteWifiMulticastDisabledFromSource(in WorkSource ws); 7136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteNetworkInterfaceType(String iface, int type); 7236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void noteNetworkStatsEnabled(); 7336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines void setBatteryState(int status, int health, int plugType, int level, int temp, int volt); 7436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines long getAwakeTimeBattery(); 75 long getAwakeTimePlugged(); 76} 77