summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2021-07-19 15:45:39 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-07-19 15:45:39 +0000
commit4c22f15543e87d390b565fedbb747ebfaa07c627 (patch)
tree162d9d46d84f9bc0db93139edee8808b5a8dbe92 /core/java
parent8565e714262f2b09719e444dea1dfbf1f4456e42 (diff)
parent54c9ff981e3039259fd1b6a4d4847fd64b195a30 (diff)
Merge "Added Ble scan APIs to BatteryStatsManager" am: 54c9ff981e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1750141 Change-Id: I9fc31acd57e674d4fa8abfc2c038bf2cb744178d
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/os/BatteryStatsManager.java69
-rw-r--r--core/java/com/android/internal/app/IBatteryStats.aidl2
2 files changed, 64 insertions, 7 deletions
diff --git a/core/java/android/os/BatteryStatsManager.java b/core/java/android/os/BatteryStatsManager.java
index f5172cf0fb69..16034df942db 100644
--- a/core/java/android/os/BatteryStatsManager.java
+++ b/core/java/android/os/BatteryStatsManager.java
@@ -219,7 +219,7 @@ public final class BatteryStatsManager {
/**
* Indicates that a new wifi scan has started.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
public void reportWifiScanStartedFromSource(@NonNull WorkSource ws) {
@@ -233,7 +233,7 @@ public final class BatteryStatsManager {
/**
* Indicates that an ongoing wifi scan has stopped.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
public void reportWifiScanStoppedFromSource(@NonNull WorkSource ws) {
@@ -247,7 +247,7 @@ public final class BatteryStatsManager {
/**
* Indicates that a new wifi batched scan has started.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
* @param csph Channels scanned per hour.
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
@@ -263,7 +263,7 @@ public final class BatteryStatsManager {
/**
* Indicates that an ongoing wifi batched scan has stopped.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
public void reportWifiBatchedScanStoppedFromSource(@NonNull WorkSource ws) {
@@ -307,7 +307,7 @@ public final class BatteryStatsManager {
/**
* Indicates an app acquiring full wifi lock.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
public void reportFullWifiLockAcquiredFromSource(@NonNull WorkSource ws) {
@@ -321,7 +321,7 @@ public final class BatteryStatsManager {
/**
* Indicates an app releasing full wifi lock.
*
- * @param ws Worksource (to be used for battery blaming).
+ * @param ws worksource (to be used for battery blaming).
*/
@RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
public void reportFullWifiLockReleasedFromSource(@NonNull WorkSource ws) {
@@ -436,6 +436,63 @@ public final class BatteryStatsManager {
}
}
+ /**
+ * Indicates that a new Bluetooth LE scan has started.
+ *
+ * @param ws worksource (to be used for battery blaming).
+ * @param isUnoptimized whether or not the scan has a filter.
+ */
+ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
+ public void reportBleScanStarted(@NonNull WorkSource ws, boolean isUnoptimized) {
+ try {
+ mBatteryStats.noteBleScanStarted(ws, isUnoptimized);
+ } catch (RemoteException e) {
+ e.rethrowFromSystemServer();
+ }
+ }
+
+ /**
+ * Indicates that an ongoing Bluetooth LE scan has stopped.
+ *
+ * @param ws worksource (to be used for battery blaming).
+ * @param isUnoptimized whether or not the scan has a filter.
+ */
+ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
+ public void reportBleScanStopped(@NonNull WorkSource ws, boolean isUnoptimized) {
+ try {
+ mBatteryStats.noteBleScanStopped(ws, isUnoptimized);
+ } catch (RemoteException e) {
+ e.rethrowFromSystemServer();
+ }
+ }
+
+ /**
+ * Indicates that Bluetooth LE has been reset.
+ */
+ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
+ public void reportBleScanReset() {
+ try {
+ mBatteryStats.noteBleScanReset();
+ } catch (RemoteException e) {
+ e.rethrowFromSystemServer();
+ }
+ }
+
+ /**
+ * Indicates that Bluetooth LE scan has received new results.
+ *
+ * @param ws worksource (to be used for battery blaming).
+ * @param numNewResults number of results received since last update.
+ */
+ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
+ public void reportBleScanResults(@NonNull WorkSource ws, int numNewResults) {
+ try {
+ mBatteryStats.noteBleScanResults(ws, numNewResults);
+ } catch (RemoteException e) {
+ e.rethrowFromSystemServer();
+ }
+ }
+
private static int getDataConnectionPowerState(boolean isActive) {
// TODO: DataConnectionRealTimeInfo is under telephony package but the constants are used
// for both Wifi and mobile. It would make more sense to separate the constants to a
diff --git a/core/java/com/android/internal/app/IBatteryStats.aidl b/core/java/com/android/internal/app/IBatteryStats.aidl
index 0b78a2b6d22f..fcbcf6cfb4a7 100644
--- a/core/java/com/android/internal/app/IBatteryStats.aidl
+++ b/core/java/com/android/internal/app/IBatteryStats.aidl
@@ -140,7 +140,7 @@ interface IBatteryStats {
void noteBleScanStarted(in WorkSource ws, boolean isUnoptimized);
void noteBleScanStopped(in WorkSource ws, boolean isUnoptimized);
- void noteResetBleScan();
+ void noteBleScanReset();
void noteBleScanResults(in WorkSource ws, int numNewResults);
/** {@hide} */