summaryrefslogtreecommitdiffstats
path: root/core/java
diff options
context:
space:
mode:
authorAmith Yamasani <yamasani@google.com>2015-05-12 13:04:29 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-05-12 13:04:31 +0000
commitbb9d9278aa6fe3ba3d4c21b03d3e3da4543a974c (patch)
treee184b253d316feec89eb65c151bc8b0b4eaea522 /core/java
parent6959865fb0de965b5a2c7a797bf26b8bf9d10228 (diff)
parent06bf824628c118fbd5ad6756913d7fd63a6f4ce5 (diff)
downloadframeworks_base-bb9d9278aa6fe3ba3d4c21b03d3e3da4543a974c.zip
frameworks_base-bb9d9278aa6fe3ba3d4c21b03d3e3da4543a974c.tar.gz
frameworks_base-bb9d9278aa6fe3ba3d4c21b03d3e3da4543a974c.tar.bz2
Merge "Idle timebase" into mnc-dev
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/app/usage/UsageStats.java20
-rw-r--r--core/java/android/app/usage/UsageStatsManagerInternal.java8
-rw-r--r--core/java/android/os/IDeviceIdleController.aidl1
3 files changed, 21 insertions, 8 deletions
diff --git a/core/java/android/app/usage/UsageStats.java b/core/java/android/app/usage/UsageStats.java
index abfc435..81c7422 100644
--- a/core/java/android/app/usage/UsageStats.java
+++ b/core/java/android/app/usage/UsageStats.java
@@ -46,6 +46,13 @@ public final class UsageStats implements Parcelable {
public long mLastTimeUsed;
/**
+ * Last time the package was used and the beginning of the idle countdown.
+ * This uses a different timebase that is about how much the device has been in use in general.
+ * {@hide}
+ */
+ public long mBeginIdleTime;
+
+ /**
* {@hide}
*/
public long mTotalTimeInForeground;
@@ -74,6 +81,7 @@ public final class UsageStats implements Parcelable {
mTotalTimeInForeground = stats.mTotalTimeInForeground;
mLaunchCount = stats.mLaunchCount;
mLastEvent = stats.mLastEvent;
+ mBeginIdleTime = stats.mBeginIdleTime;
}
public String getPackageName() {
@@ -110,6 +118,15 @@ public final class UsageStats implements Parcelable {
}
/**
+ * @hide
+ * Get the last time this package was active, measured in milliseconds. This timestamp
+ * uses a timebase that represents how much the device was used and not wallclock time.
+ */
+ public long getBeginIdleTime() {
+ return mBeginIdleTime;
+ }
+
+ /**
* Get the total time this package spent in the foreground, measured in milliseconds.
*/
public long getTotalTimeInForeground() {
@@ -133,6 +150,7 @@ public final class UsageStats implements Parcelable {
mLastEvent = right.mLastEvent;
mEndTimeStamp = right.mEndTimeStamp;
mLastTimeUsed = right.mLastTimeUsed;
+ mBeginIdleTime = right.mBeginIdleTime;
}
mBeginTimeStamp = Math.min(mBeginTimeStamp, right.mBeginTimeStamp);
mTotalTimeInForeground += right.mTotalTimeInForeground;
@@ -153,6 +171,7 @@ public final class UsageStats implements Parcelable {
dest.writeLong(mTotalTimeInForeground);
dest.writeInt(mLaunchCount);
dest.writeInt(mLastEvent);
+ dest.writeLong(mBeginIdleTime);
}
public static final Creator<UsageStats> CREATOR = new Creator<UsageStats>() {
@@ -166,6 +185,7 @@ public final class UsageStats implements Parcelable {
stats.mTotalTimeInForeground = in.readLong();
stats.mLaunchCount = in.readInt();
stats.mLastEvent = in.readInt();
+ stats.mBeginIdleTime = in.readLong();
return stats;
}
diff --git a/core/java/android/app/usage/UsageStatsManagerInternal.java b/core/java/android/app/usage/UsageStatsManagerInternal.java
index 8b3fc2e..7bcc038 100644
--- a/core/java/android/app/usage/UsageStatsManagerInternal.java
+++ b/core/java/android/app/usage/UsageStatsManagerInternal.java
@@ -69,14 +69,6 @@ public abstract class UsageStatsManagerInternal {
public abstract boolean isAppIdle(String packageName, int userId);
/**
- * Returns the most recent time that the specified package was active for the given user.
- * @param packageName The package to search.
- * @param userId The user id of the user of interest.
- * @return The timestamp of when the package was last used, or -1 if it hasn't been used.
- */
- public abstract long getLastPackageAccessTime(String packageName, int userId);
-
- /**
* Sets up a listener for changes to packages being accessed.
* @param listener A listener within the system process.
*/
diff --git a/core/java/android/os/IDeviceIdleController.aidl b/core/java/android/os/IDeviceIdleController.aidl
index 3cb29ff..602bfea 100644
--- a/core/java/android/os/IDeviceIdleController.aidl
+++ b/core/java/android/os/IDeviceIdleController.aidl
@@ -23,4 +23,5 @@ interface IDeviceIdleController {
String[] getSystemPowerWhitelist();
String[] getFullPowerWhitelist();
int[] getAppIdWhitelist();
+ boolean isPowerSaveWhitelistApp(String name);
}