summaryrefslogtreecommitdiffstats
path: root/core/java/android/content/pm
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2010-10-10 14:20:34 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-10-10 14:20:34 -0700
commit615e2fa1755ea3b6b8196f783842cd394ad3beb2 (patch)
tree66cb60774b8306efa3c0e61f30f130aa77565ffc /core/java/android/content/pm
parent3caeffac54f4aacecab63f709463885c5afe367d (diff)
parentb77455ee290691b036ac79236a93e57ff294ef0c (diff)
downloadframeworks_base-615e2fa1755ea3b6b8196f783842cd394ad3beb2.zip
frameworks_base-615e2fa1755ea3b6b8196f783842cd394ad3beb2.tar.gz
frameworks_base-615e2fa1755ea3b6b8196f783842cd394ad3beb2.tar.bz2
am b77455ee: am 78d68836: Implement tracking of package install times.
Merge commit 'b77455ee290691b036ac79236a93e57ff294ef0c' * commit 'b77455ee290691b036ac79236a93e57ff294ef0c': Implement tracking of package install times.
Diffstat (limited to 'core/java/android/content/pm')
-rw-r--r--core/java/android/content/pm/PackageInfo.java16
-rw-r--r--core/java/android/content/pm/PackageManager.java2
-rw-r--r--core/java/android/content/pm/PackageParser.java4
3 files changed, 20 insertions, 2 deletions
diff --git a/core/java/android/content/pm/PackageInfo.java b/core/java/android/content/pm/PackageInfo.java
index af327c3..eb05d76 100644
--- a/core/java/android/content/pm/PackageInfo.java
+++ b/core/java/android/content/pm/PackageInfo.java
@@ -65,6 +65,18 @@ public class PackageInfo implements Parcelable {
public ApplicationInfo applicationInfo;
/**
+ * The time at which the app was first installed. Units are as
+ * per {@link System#currentTimeMillis()}.
+ */
+ public long firstInstallTime;
+
+ /**
+ * The time at which the app was last updated. Units are as
+ * per {@link System#currentTimeMillis()}.
+ */
+ public long lastUpdateTime;
+
+ /**
* All kernel group-IDs that have been assigned to this package.
* This is only filled in if the flag {@link PackageManager#GET_GIDS} was set.
*/
@@ -207,6 +219,8 @@ public class PackageInfo implements Parcelable {
} else {
dest.writeInt(0);
}
+ dest.writeLong(firstInstallTime);
+ dest.writeLong(lastUpdateTime);
dest.writeIntArray(gids);
dest.writeTypedArray(activities, parcelableFlags);
dest.writeTypedArray(receivers, parcelableFlags);
@@ -242,6 +256,8 @@ public class PackageInfo implements Parcelable {
if (hasApp != 0) {
applicationInfo = ApplicationInfo.CREATOR.createFromParcel(source);
}
+ firstInstallTime = source.readLong();
+ lastUpdateTime = source.readLong();
gids = source.createIntArray();
activities = source.createTypedArray(ActivityInfo.CREATOR);
receivers = source.createTypedArray(ActivityInfo.CREATOR);
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 7346561..b5d1653 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -1891,7 +1891,7 @@ public abstract class PackageManager {
if (pkg == null) {
return null;
}
- return PackageParser.generatePackageInfo(pkg, null, flags);
+ return PackageParser.generatePackageInfo(pkg, null, flags, 0, 0);
}
/**
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index 6cbc9b5..89c9d25 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -183,7 +183,7 @@ public class PackageParser {
* @param flags indicating which optional information is included.
*/
public static PackageInfo generatePackageInfo(PackageParser.Package p,
- int gids[], int flags) {
+ int gids[], int flags, long firstInstallTime, long lastUpdateTime) {
PackageInfo pi = new PackageInfo();
pi.packageName = p.packageName;
@@ -193,6 +193,8 @@ public class PackageParser {
pi.sharedUserLabel = p.mSharedUserLabel;
pi.applicationInfo = p.applicationInfo;
pi.installLocation = p.installLocation;
+ pi.firstInstallTime = firstInstallTime;
+ pi.lastUpdateTime = lastUpdateTime;
if ((flags&PackageManager.GET_GIDS) != 0) {
pi.gids = gids;
}