summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java36
-rw-r--r--services/core/java/com/android/server/pm/PackageSettingBase.java24
-rw-r--r--services/core/java/com/android/server/pm/Settings.java37
-rw-r--r--services/tests/servicestests/src/com/android/server/pm/PackageManagerSettingsTests.java1
4 files changed, 8 insertions, 90 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 3cd24f967a86..dc8b98d9706e 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -2720,11 +2720,12 @@ public class PackageManagerService extends IPackageManager.Stub
* application can be scanned.
*/
if (mSettings.isDisabledSystemPackageLPr(ps.name)) {
- logCriticalInfo(Log.WARN, "Expecting better updated system app for "
- + ps.name + "; removing system app. Last known codePath="
- + ps.codePathString + ", installStatus=" + ps.installStatus
- + ", versionCode=" + ps.versionCode + "; scanned versionCode="
- + scannedPkg.getLongVersionCode());
+ logCriticalInfo(Log.WARN,
+ "Expecting better updated system app for " + ps.name
+ + "; removing system app. Last known"
+ + " codePath=" + ps.codePathString
+ + ", versionCode=" + ps.versionCode
+ + "; scanned versionCode=" + scannedPkg.getLongVersionCode());
removePackageLI(scannedPkg, true);
mExpectingBetter.put(ps.name, ps.codePath);
}
@@ -2753,18 +2754,6 @@ public class PackageManagerService extends IPackageManager.Stub
}
}
- //look for any incomplete package installations
- ArrayList<PackageSetting> deletePkgsList = mSettings.getListOfIncompleteInstallPackagesLPr();
- for (int i = 0; i < deletePkgsList.size(); i++) {
- // Actual deletion of code and data will be handled by later
- // reconciliation step
- final String packageName = deletePkgsList.get(i).name;
- logCriticalInfo(Log.WARN, "Cleaning up incompletely installed app: " + packageName);
- synchronized (mPackages) {
- mSettings.removePackageLPw(packageName);
- }
- }
-
//delete tmp files
deleteTempPackageFiles();
@@ -16574,17 +16563,7 @@ public class PackageManagerService extends IPackageManager.Stub
PackageInstalledInfo res, UserHandle user, int installReason) {
Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "updateSettings");
- String pkgName = pkg.packageName;
- synchronized (mPackages) {
- //write settings. the installStatus will be incomplete at this stage.
- //note that the new package setting would have already been
- //added to mPackages. It hasn't been persisted yet.
- mSettings.setInstallStatus(pkgName, PackageSettingBase.PKG_INSTALL_INCOMPLETE);
- // TODO: Remove this write? It's also written at the end of this method
- Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "writeSettings");
- mSettings.writeLPr();
- Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);
- }
+ final String pkgName = pkg.packageName;
if (DEBUG_INSTALL) Slog.d(TAG, "New package installed in " + pkg.codePath);
synchronized (mPackages) {
@@ -16665,7 +16644,6 @@ public class PackageManagerService extends IPackageManager.Stub
res.name = pkgName;
res.uid = pkg.applicationInfo.uid;
res.pkg = pkg;
- mSettings.setInstallStatus(pkgName, PackageSettingBase.PKG_INSTALL_COMPLETE);
mSettings.setInstallerPackageName(pkgName, installerPackageName);
res.setReturnCode(PackageManager.INSTALL_SUCCEEDED);
//to update install status
diff --git a/services/core/java/com/android/server/pm/PackageSettingBase.java b/services/core/java/com/android/server/pm/PackageSettingBase.java
index f14a684b3865..a0ed12611e48 100644
--- a/services/core/java/com/android/server/pm/PackageSettingBase.java
+++ b/services/core/java/com/android/server/pm/PackageSettingBase.java
@@ -46,19 +46,6 @@ public abstract class PackageSettingBase extends SettingBase {
private static final int[] EMPTY_INT_ARRAY = new int[0];
- /**
- * Indicates the state of installation. Used by PackageManager to figure out
- * incomplete installations. Say a package is being installed (the state is
- * set to PKG_INSTALL_INCOMPLETE) and remains so till the package
- * installation is successful or unsuccessful in which case the
- * PackageManager will no longer maintain state information associated with
- * the package. If some exception(like device freeze or battery being pulled
- * out) occurs during installation of a package, the PackageManager needs
- * this information to clean up the previously failed installation.
- */
- static final int PKG_INSTALL_COMPLETE = 1;
- static final int PKG_INSTALL_INCOMPLETE = 0;
-
public final String name;
final String realName;
@@ -122,8 +109,6 @@ public abstract class PackageSettingBase extends SettingBase {
// started until explicitly launched by the user.
private final SparseArray<PackageUserState> userState = new SparseArray<PackageUserState>();
- int installStatus = PKG_INSTALL_COMPLETE;
-
/**
* Non-persisted value. During an "upgrade without restart", we need the set
* of all previous code paths so we can surgically add the new APKs to the
@@ -209,14 +194,6 @@ public abstract class PackageSettingBase extends SettingBase {
return volumeUuid;
}
- public void setInstallStatus(int newStatus) {
- installStatus = newStatus;
- }
-
- public int getInstallStatus() {
- return installStatus;
- }
-
public void setTimeStamp(long newStamp) {
timeStamp = newStamp;
}
@@ -260,7 +237,6 @@ public abstract class PackageSettingBase extends SettingBase {
cpuAbiOverrideString = orig.cpuAbiOverrideString;
firstInstallTime = orig.firstInstallTime;
installPermissionsFixed = orig.installPermissionsFixed;
- installStatus = orig.installStatus;
installerPackageName = orig.installerPackageName;
isOrphaned = orig.isOrphaned;
keySetData = orig.keySetData;
diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java
index b6e1534d6dcb..b5fe9ea49b86 100644
--- a/services/core/java/com/android/server/pm/Settings.java
+++ b/services/core/java/com/android/server/pm/Settings.java
@@ -455,15 +455,6 @@ public final class Settings {
return mRenamedPackages.put(pkgName, origPkgName);
}
- void setInstallStatus(String pkgName, final int status) {
- PackageSetting p = mPackages.get(pkgName);
- if(p != null) {
- if(p.getInstallStatus() != status) {
- p.setInstallStatus(status);
- }
- }
- }
-
void applyPendingPermissionGrantsLPw(String packageName, int userId) {
ArrayMap<String, ArraySet<RestoredPermissionGrant>> grantsByPackage =
mRestoredUserGrants.get(userId);
@@ -2839,9 +2830,6 @@ public final class Settings {
if (pkg.uidError) {
serializer.attribute(null, "uidError", "true");
}
- if (pkg.installStatus == PackageSettingBase.PKG_INSTALL_INCOMPLETE) {
- serializer.attribute(null, "installStatus", "false");
- }
if (pkg.installerPackageName != null) {
serializer.attribute(null, "installer", pkg.installerPackageName);
}
@@ -2912,20 +2900,6 @@ public final class Settings {
bp.writeLPr(serializer);
}
- ArrayList<PackageSetting> getListOfIncompleteInstallPackagesLPr() {
- final ArraySet<String> kList = new ArraySet<String>(mPackages.keySet());
- final Iterator<String> its = kList.iterator();
- final ArrayList<PackageSetting> ret = new ArrayList<PackageSetting>();
- while (its.hasNext()) {
- final String key = its.next();
- final PackageSetting ps = mPackages.get(key);
- if (ps.getInstallStatus() == PackageSettingBase.PKG_INSTALL_INCOMPLETE) {
- ret.add(ps);
- }
- }
- return ret;
- }
-
void addPackageToCleanLPw(PackageCleanItem pkg) {
if (!mPackagesToBeCleaned.contains(pkg)) {
mPackagesToBeCleaned.add(pkg);
@@ -3874,15 +3848,6 @@ public final class Settings {
mInstallerPackages.add(installerPackageName);
}
- final String installStatusStr = parser.getAttributeValue(null, "installStatus");
- if (installStatusStr != null) {
- if (installStatusStr.equalsIgnoreCase("false")) {
- packageSetting.installStatus = PackageSettingBase.PKG_INSTALL_INCOMPLETE;
- } else {
- packageSetting.installStatus = PackageSettingBase.PKG_INSTALL_COMPLETE;
- }
- }
-
int outerDepth = parser.getDepth();
int type;
while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
@@ -4668,7 +4633,7 @@ public final class Settings {
pw.print(prefix); pw.print(" signatures="); pw.println(ps.signatures);
pw.print(prefix); pw.print(" installPermissionsFixed=");
pw.print(ps.installPermissionsFixed);
- pw.print(" installStatus="); pw.println(ps.installStatus);
+ pw.println();
pw.print(prefix); pw.print(" pkgFlags="); printFlags(pw, ps.pkgFlags, FLAG_DUMP_SPEC);
pw.println();
diff --git a/services/tests/servicestests/src/com/android/server/pm/PackageManagerSettingsTests.java b/services/tests/servicestests/src/com/android/server/pm/PackageManagerSettingsTests.java
index 98483a80e091..53d97e7957c8 100644
--- a/services/tests/servicestests/src/com/android/server/pm/PackageManagerSettingsTests.java
+++ b/services/tests/servicestests/src/com/android/server/pm/PackageManagerSettingsTests.java
@@ -612,7 +612,6 @@ public class PackageManagerSettingsTests {
assertThat(origPkgSetting.installerPackageName, is(testPkgSetting.installerPackageName));
assertThat(origPkgSetting.installPermissionsFixed,
is(testPkgSetting.installPermissionsFixed));
- assertThat(origPkgSetting.installStatus, is(testPkgSetting.installStatus));
assertThat(origPkgSetting.isOrphaned, is(testPkgSetting.isOrphaned));
assertSame(origPkgSetting.keySetData, testPkgSetting.keySetData);
assertThat(origPkgSetting.keySetData, is(testPkgSetting.keySetData));