History log of /frameworks/base/services/java/com/android/server/pm/Installer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ecc8d6f114532af9a89fd0114cf15a00d81a35bf 02-May-2013 Dianne Hackborn <hackbod@google.com> Fix issue #8768456: Settings > App Info under reports...

...app storage size for apps w/ .so files

The lib directories are tagged with the apk install number,
so must be explicitly passed down to installd.

Change-Id: Ic37b03726f9a7405eb05956703f8198223b22595
/frameworks/base/services/java/com/android/server/pm/Installer.java
0f40dc923c67e8822f9157aec4f786f73848af07 25-Mar-2013 Robert Craig <rpcraig@tycho.ncsc.mil> Add seinfo parsing to PackageManagerService.

This patch set allows the PMS to parse the
mac_permissions.xml file which contains the
seinfo values. Each package that is installed
on the device will be assigned an seinfo value
based on policy. This seinfo value will help label
the app process and data directory. Modifications
include adjustments to ApplicationInfo.java
to store the seinfo tag per package as well as
adjustments to installd to communicate the seinfo
tag to libselinux.

Change-Id: I61ad1ea12fb6a9a6d0b108ec163bc4bf4c954b58
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
/frameworks/base/services/java/com/android/server/pm/Installer.java
1506921e8e7897be8297365dcaf15f4c6d6eb472 10-Jan-2013 Nick Kralevich <nnk@google.com> Revert "App home directories are now 0700 for targetSdkVersion > 17"

This reverts commit 92091fa9636403728fe94cc83400495a8612c2d3.

Bug: 7966399
Bug: 7208882
/frameworks/base/services/java/com/android/server/pm/Installer.java
92091fa9636403728fe94cc83400495a8612c2d3 13-Dec-2012 Nick Kralevich <nnk@google.com> App home directories are now 0700 for targetSdkVersion > 17

Pass targetSdkVersion to installd so it knows the appropriate
permissions to apply to the app's home directory.

Bug: 7208882
Change-Id: Ia62ed36b32ee5af01077fb10a586024411be8ed4
/frameworks/base/services/java/com/android/server/pm/Installer.java
4d254266a406b20273b00840a9426fd6d257ee2c 12-Dec-2012 Nick Kralevich <nnk@google.com> Remove unused code.

Change-Id: I6785cea91c0ab2c367645201fb8862dbf1a55773
/frameworks/base/services/java/com/android/server/pm/Installer.java
383fa18b511c195cc51a96c5504442bfec998e9f 24-Oct-2012 Dave Burke <daveburke@google.com> Revert "Check non-primary user dirs during package scan"

This reverts commit 4525f5b69cb44a9a0c92f9c525fc47541f456621

Change-Id: I31b7a0860972532478ab3420556b806bfa78739a
/frameworks/base/services/java/com/android/server/pm/Installer.java
4525f5b69cb44a9a0c92f9c525fc47541f456621 22-Oct-2012 Kenny Root <kroot@google.com> Check non-primary user dirs during package scan

During package scan, only the primary user data directories were
checked. If the secondary user didn't have an application directory, it
would happily ignore it. The app would then crash upon startup.

Bug: 7391882
Change-Id: I1fa92aa27386104d4ac6bc5dc92bfbf2e7dfac9f
/frameworks/base/services/java/com/android/server/pm/Installer.java
a3e90798b7ad3ed62e5b31842c699b2f98bd457b 18-Oct-2012 Kenny Root <kroot@google.com> Robustly add symlink and add for non-primary users

Amazingly, some apps still don't use the nativeLibraryPath. So add a lib
symlink for non-primary users to fix that.

Also, there was an error when the symlink existed that it would give up.
This shouldn't really happen, but in that case, just remove it and
create a new one to be safe.

Also, move the downgrade code to the appropriate place. This downgrade
case triggered the above symlink existing bug.

Bug: 7318366
Bug: 7371571
Change-Id: Ia175b36d98f00bdc2f2433b909aafd524eb34d15
/frameworks/base/services/java/com/android/server/pm/Installer.java
54289b8b4a110cc1ae106d79785cc762a2aebd6e 01-Oct-2012 Amith Yamasani <yamasani@google.com> Fix cache deletion for secondary users

Bug: 7249419

Change-Id: Idbc0f9994508059ebf5055aea961b87e08b3673a
/frameworks/base/services/java/com/android/server/pm/Installer.java
f69c812f49cb2dea296cd319984e58af026f4c3a 13-Sep-2012 Jeff Brown <jeffbrown@google.com> Wait for installd to finish starting before booting.

Fixes a race condition where the system server might
try to access /data/user/0 before it was created. In so
doing, the system server could end up creating a directory
in that location with the wrong permissions and everything
would promptly crash.

Bug: 7151686
Change-Id: I349c12fd2b9685d2e7f6305e74f6bf7d5816b752
/frameworks/base/services/java/com/android/server/pm/Installer.java
9bbd70a96397bd5f1445ad6c21977fccfb350dfa 10-Sep-2012 Kenny Root <kroot@google.com> Remove "unlinklib" command from installd

unlinklib is no longer necessary since libraries are now either stored
in an ASEC container or in /data/app-lib

Replace lib directory with a symlink to the /data/app-lib directory even
if it's a dangling link. That way developers don't name something "lib"
in their directory which gets blown away during an update.

Change-Id: I142cf13dba9c13aafbaf0ff8d5e9872cbf1cc910
/frameworks/base/services/java/com/android/server/pm/Installer.java
ddbe50df2ca70700a46e5849347989b520d1113e 06-Sep-2012 Kenny Root <kroot@google.com> Move native libraries to /data/app-lib

Instead of unpacking libraries into /data/data/<appname>/lib, unpack
them into /data/app-lib so that multi-user applications can use the same
libraries.

Change-Id: I636dafb5a9eea8cf5a41f1360698e7695455f385
/frameworks/base/services/java/com/android/server/pm/Installer.java
0c191624fba8484e811027a9db40a62a960ab7dc 09-Sep-2012 Kenny Root <kroot@google.com> Remove "protect" command from installd

No one uses the "protect" command anymore, so remove it from installd.

Change-Id: Ia990bae6f95cd6e317496f5dd173ec15164d7164
/frameworks/base/services/java/com/android/server/pm/Installer.java
0c3804950236fe170ebf6cc7a5f1e3e305b8f315 21-Aug-2012 Dianne Hackborn <hackbod@google.com> Improve multi-user app management.

Introduce API to get per-user storage information, keep track
of services associated with users, and various small cleanup.

Change-Id: I5d4e784e7ff3cccfed627d66a090d2f464202634
/frameworks/base/services/java/com/android/server/pm/Installer.java
d0c5f515c05d05c9d24971695337daf9d6ce409c 08-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6295373: "Package com.google.android.apps.authenticator2 has...

...mismatched uid: X on disk, Y in settings" errors on Froyo and Gingerbread

Deal more gracefully with the uid changing in three ways:

1. If the uid on disk has become root, then have installd change it to
the application's uid. This is to correct a potential case where
installd was interrupted while linking or unlinking the libs dir,
during which it temporarily changes the owner of the dir to root
so that a malicious app can not get in its way. So if the uid on
disk has become root, we assume we can safely just change it back
to the correct uid.

2. When scaning packages at boot, use the same "delete and rebuild data
directory" code for third party applications as we have for system
applications. This allows us to at least end up in a state where the
app will run, even if its data is lost.

3. But we really don't want to get in to case 2, so if an application
update is being installed and we find that the uid we now have for
the app is different than the one on disk, fail the update. This will
protect against for example a developer changing the sharedUserId of
their app and getting into this bad state.

Bug: 6295373
Change-Id: Ic802fdd818ac62449ff3c61d1fff1aa4d4942f39
/frameworks/base/services/java/com/android/server/pm/Installer.java
742a67127366c376fdf188ff99ba30b27d3bf90c 04-May-2011 Amith Yamasani <yamasani@google.com> Multi-user - 1st major checkin

Switching activity stacks
Cache ContentProvider per user
Long-press power to switch users (on phone)

Added ServiceMap for separating services by user
Launch PendingIntents on the correct user's uid
Fix task switching from Recents list
AppWidgetService is mostly working.

Commands added to pm and am to allow creating and switching profiles.

Change-Id: I15810e8cfbe50a04bd3323a7ef5a8ff4230870ed
/frameworks/base/services/java/com/android/server/pm/Installer.java
292f8bc9d1b790ab975a87a842c7fabc908b97e0 28-Jun-2011 Dianne Hackborn <hackbod@google.com> Plumb information from the framework about asec container size.

Change-Id: Ie0ec3cb6d463aefa341a8cbea80be790451ba5e3
/frameworks/base/services/java/com/android/server/pm/Installer.java
0b285499db739ba50f2f839d633e763c70e67f96 15-Apr-2011 Amith Yamasani <yamasani@google.com> Plumbing in PackageManager and installd for multi-user support.

- Create /data/user directory and symlink /data/user/0 -> /data/data for
backward compatibility
- Create data directories for all packages for new user

- Remove data directories when removing a user

- Create data directories for all users when a package is created

- Clear / Remove data for multiple users

- Fixed a bug in verifying the location of a system app

- pm commands for createUser and removeUser (will be disabled later)

- symlink duplicate lib directories to the original lib directory

Change-Id: Id9fdfcf0e62406a8896aa811314dfc08d5f6ed95
/frameworks/base/services/java/com/android/server/pm/Installer.java
63ebffcb84f4e2fc55d576aed07c4559f66d97a8 06-Apr-2011 Joe Onorato <joeo@google.com> turn off log spew

Change-Id: I7e5564e02460ff41829c9fd26d80032ea3104498
/frameworks/base/services/java/com/android/server/pm/Installer.java
cf0b38ca6e5aa5efded7dbdbb623f6cd2746c96a 22-Mar-2011 Kenny Root <kroot@google.com> Split PackageManagerService into subclasses

Split PackageManagerService from one monolithic class with several inner
classes to several classes. This will help determining how its data
structures can be reshuffled to provide better separation of concerns.

Change-Id: Ic7571daebdcf13ce08e08f34204c5bbf4140139b
/frameworks/base/services/java/com/android/server/pm/Installer.java