diff options
| -rw-r--r-- | services/java/com/android/server/pm/PackageManagerService.java | 11 | ||||
| -rw-r--r-- | services/java/com/android/server/pm/Settings.java | 5 |
2 files changed, 14 insertions, 2 deletions
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java index 9a79f86c7177..e20cd02dc551 100644 --- a/services/java/com/android/server/pm/PackageManagerService.java +++ b/services/java/com/android/server/pm/PackageManagerService.java @@ -1087,7 +1087,8 @@ public class PackageManagerService extends IPackageManager.Stub { /* * If the package is scanned, it's not erased. */ - if (mPackages.containsKey(ps.name)) { + final PackageParser.Package scannedPkg = mPackages.get(ps.name); + if (scannedPkg != null) { /* * If the system app is both scanned and in the * disabled packages list, then it must have been @@ -1096,7 +1097,9 @@ public class PackageManagerService extends IPackageManager.Stub { * application can be scanned. */ if (mSettings.isDisabledSystemPackageLPr(ps.name)) { - mPackages.remove(ps.name); + Slog.i(TAG, "Expecting better updatd system app for " + ps.name + + "; removing system app"); + removePackageLI(scannedPkg, true); } continue; @@ -8626,6 +8629,10 @@ public class PackageManagerService extends IPackageManager.Stub { } pw.print(" ["); pw.print(entry.getKey()); pw.println("]:"); pw.print(" "); pw.println(p.toString()); + if (p.info != null && p.info.applicationInfo != null) { + final String appInfo = p.info.applicationInfo.toString(); + pw.print(" applicationInfo="); pw.println(appInfo); + } } } diff --git a/services/java/com/android/server/pm/Settings.java b/services/java/com/android/server/pm/Settings.java index 91cd4587293e..d031686e3c06 100644 --- a/services/java/com/android/server/pm/Settings.java +++ b/services/java/com/android/server/pm/Settings.java @@ -2459,6 +2459,7 @@ final class Settings { pw.print(" nativeLibraryPath="); pw.println(ps.nativeLibraryPathString); pw.print(" versionCode="); pw.println(ps.versionCode); if (ps.pkg != null) { + pw.print(" applicationInfo="); pw.println(ps.pkg.applicationInfo.toString()); pw.print(" flags="); printFlags(pw, ps.pkg.applicationInfo.flags, FLAG_DUMP_SPEC); pw.println(); pw.print(" versionName="); pw.println(ps.pkg.mVersionName); pw.print(" dataDir="); pw.println(ps.pkg.applicationInfo.dataDir); @@ -2592,6 +2593,10 @@ final class Settings { pw.print(" compat name="); pw.println(ps.name); } + if (ps.pkg != null && ps.pkg.applicationInfo != null) { + pw.print(" applicationInfo="); + pw.println(ps.pkg.applicationInfo.toString()); + } pw.print(" userId="); pw.println(ps.appId); pw.print(" sharedUser="); |