summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Brian Carlstrom <bdc@google.com> 2014-06-23 15:51:22 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2014-06-23 15:51:22 +0000
commit78e51f360d9d89f1fe8acf4baa76ef7854d88130 (patch)
treee2f2b423aeeb4baad6f64538725b672d9132e081
parent75dc9900c6441bb5e1b31281de067d1f4fe2e28a (diff)
parent9e36a8cd3e106e5a2bb0d5cce805842b61e05426 (diff)
am 9e36a8cd: am 1b98ccf2: am 0924ef65: Merge "Treat missing package usage data as a separate case"
* commit '9e36a8cd3e106e5a2bb0d5cce805842b61e05426': Treat missing package usage data as a separate case
-rwxr-xr-xservices/core/java/com/android/server/pm/PackageManagerService.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index f40ca3a4be02..bf042357c742 100755
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -621,10 +621,10 @@ public class PackageManagerService extends IPackageManager.Stub {
private final AtomicLong mLastWritten = new AtomicLong(0);
private final AtomicBoolean mBackgroundWriteRunning = new AtomicBoolean(false);
- private boolean mIsFirstBoot = false;
+ private boolean mIsHistoricalPackageUsageAvailable = true;
- boolean isFirstBoot() {
- return mIsFirstBoot;
+ boolean isHistoricalPackageUsageAvailable() {
+ return mIsHistoricalPackageUsageAvailable;
}
void write(boolean force) {
@@ -715,7 +715,7 @@ public class PackageManagerService extends IPackageManager.Stub {
pkg.mLastPackageUsageTimeInMills = timeInMillis;
}
} catch (FileNotFoundException expected) {
- mIsFirstBoot = true;
+ mIsHistoricalPackageUsageAvailable = false;
} catch (IOException e) {
Log.w(TAG, "Failed to read package usage times", e);
} finally {
@@ -1742,7 +1742,7 @@ public class PackageManagerService extends IPackageManager.Stub {
@Override
public boolean isFirstBoot() {
- return !mRestoredSettings || mPackageUsage.isFirstBoot();
+ return !mRestoredSettings;
}
@Override
@@ -4624,7 +4624,7 @@ public class PackageManagerService extends IPackageManager.Stub {
// The exception is first boot of a non-eng device, which
// should do a full dexopt.
boolean eng = "eng".equals(SystemProperties.get("ro.build.type"));
- if (eng || !isFirstBoot()) {
+ if (eng || (!isFirstBoot() && mPackageUsage.isHistoricalPackageUsageAvailable())) {
// TODO: add a property to control this?
long dexOptLRUThresholdInMinutes;
if (eng) {