655d0e2029e6ae77a47e922dce4c4989818b8dd1 |
12-Jun-2013 |
Amith Yamasani <yamasani@google.com> |
Single-user restrictions Introduces a new "blocked" state for each package. This is used to temporarily disable an app via Settings->Restrictions. PIN creation and challenge activities for use by Settings and other apps. PIN is stored by the User Manager and it manages the interval for retry attempts across reboots. Change-Id: I4915329d1f72399bbcaf93a9ca9c0d2e69d098dd
ndroid/commands/pm/Pm.java
|
cbfd23ee6f14445c3e17c5169abbc80c216fa137 |
11-Jun-2013 |
Dianne Hackborn <hackbod@google.com> |
Add new API to retrieve a dumpsys of a single package. Adds a platform API, and pm command. Fixes some issues with dumping per-package data in package manager, makes battery stats able to dump per-package state. Change-Id: I76ee6d059f0ba17f7a7061886792b1b716d46d2d
ndroid/commands/pm/Pm.java
|
3fa3c28a356108a6558b6b54a0b10e1a5cc4f1b6 |
27-Mar-2013 |
Dianne Hackborn <hackbod@google.com> |
Keep track of who has disabled applications. Change-Id: I2640d3dc2200b589e2beb42a43cc93efd090f06e
ndroid/commands/pm/Pm.java
|
a83cab0001ca4d90abe622c22a7af1b0da54f739 |
08-Mar-2013 |
Christopher Tate <ctate@google.com> |
Do not hang in pm clear on an invalid package name The Activity Manager was not properly informing the observer that the operation had concluded (unsuccessfully). Bug 8222595 Change-Id: I8234e32d8edf4112c8c7a5e20e341d0b41e23014
ndroid/commands/pm/Pm.java
|
67df64b3a48a8157d08a98fa90135d0ac0ee621c |
14-Dec-2012 |
Amith Yamasani <yamasani@google.com> |
Shared accounts and sharing of apps API and preliminary implementation for sharing primary user accounts with a secondary user. AbstractAccountAuthenticator has new methods to retrieve and apply a bundle of credentials to clone an account from the primary to a restricted secondary user. The AccountManagerService initiates the account clone when it starts up the user and detects that the user has a shared account registered that hasn't been converted to a real account. AccountManager also has new hidden APIs to add/remove/get shared accounts. There might be further improvements to this API to make shared accounts hidden/visible to select apps. AccountManagerService has a new table to store the shared account information. Added ability in PackageManager to install and uninstall packages for a secondary user. This is required when the primary user selects a few apps to share with a restricted user. Remove shared accounts from secondary users when primary user removes the account. Change-Id: I9378ed0d8c1cc66baf150a4bec0ede56f6f8b06b
ndroid/commands/pm/Pm.java
|
50707cc8206f0d257ba83de2f1f99c3eaa13a4bd |
09-Feb-2013 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #8133857: Tracking ANR in Gallery Reworking the locking in resources so that we never hold the state lock while calling in to potential long running operations. This means the mTmpValue can no longer be final (since we need to use it while the lock isn't held), so a new field needs to be added as the lock and everything that touches mTmpValue must deal with it being null, restoring the value in there when possible, etc. Change-Id: Ie5ffd0f66e5f2d0e869a62d72e7a55b1c74fe872
ndroid/commands/pm/Pm.java
|
fd7adedebf88427162a3ce27fcc9cfd3893c869d |
23-Jan-2013 |
Dianne Hackborn <hackbod@google.com> |
Add new disabled state for "optional" built-in apps. The disabled state allows you to make an app disabled except for whatever parts of the system still want to provide access to them and automatically enable them if the user want to use it. Currently the input method manager service is the only part of the system that supports this, so you can put an IME in this state and it will generally look disabled but still be available in the IME list and once selected switched to the enabled state. Change-Id: I77f01c70610d82ce9070d4aabbadec8ae2cff2a3
ndroid/commands/pm/Pm.java
|
d8e1dbb6bc1fbaf4f2e38c3ba92ced94270deaac |
18-Jan-2013 |
Dianne Hackborn <hackbod@google.com> |
Rework ParceledListSlice to be much easier to use. Take advantage of this to return better information about packages filtered by permissions -- include the permissions they have in the requested array. Also fix issue #8026793 (Contact picture shows default pic while searching for a contact in qsb) by using the base package name of the Context when reporting the app name of an operation. Otherwise you could make a resource-only context for another application and do calls through that and get reported as the wrong app. Change-Id: I5e0488bf773acea5a3d22f245641828e1a106fb8
ndroid/commands/pm/Pm.java
|
a3e9ff7debde50f6b58ebc3033cbbad650c10ac7 |
16-Oct-2012 |
Jeff Sharkey <jsharkey@android.com> |
Support pm clear as --user. Bug: 7352703 Change-Id: I0e9cc4f2313e5424d234c3cb051004c0321d9dac
ndroid/commands/pm/Pm.java
|
4c76ea6b88fad2b0147c050c02c6fd3d886d6743 |
12-Oct-2012 |
Jeff Sharkey <jsharkey@android.com> |
Pm command to get maximum users. Used to drive CTS tests. Also print success message when removing a user. Bug: 7334718 Change-Id: Ia3886ddf860cd000ce567b0fed2ef0a4e2a2295c
ndroid/commands/pm/Pm.java
|
e6d3ccc99270aaf62808adc7475a25d96664f0fb |
12-Oct-2012 |
Jeff Sharkey <jsharkey@android.com> |
Print newly generated userId. Bug: 7334718 Change-Id: Id4dc456b079bebbe9f2d7ea2a8343d2215f296dc
ndroid/commands/pm/Pm.java
|
37d83a3caf138e35fa1a355787d20c351f6b37a6 |
27-Sep-2012 |
Ben Gruver <bgruv@google.com> |
Pass the originating uid to the package verifier Bug: 6923241 Change-Id: I85a3e0d53b469543cb0551d3a440d2663b5d0697
ndroid/commands/pm/Pm.java
|
920ace0bbc2d4133dbec991d2636c99a57d6245e |
21-Sep-2012 |
Amith Yamasani <yamasani@google.com> |
Query users excluding any being removed Keep track of user creation and last logged-in time. adb shell dumpsys users User switcher shouldn't show users about to be removed. No need to check for singleton for activities. Bug: 7194894 Change-Id: Ic9a59ea5bd544920479e191d1a1e8a77f8b6ddcf
ndroid/commands/pm/Pm.java
|
151ec4c9f8ca34625733730a4551a23eb97cda23 |
08-Sep-2012 |
Amith Yamasani <yamasani@google.com> |
More multi-user methods in PM pm can list installed packages by user now. Bug: 6926465 Change-Id: I822311bfd6e7e2d6fb315fc484739fbf953c9bb6
ndroid/commands/pm/Pm.java
|
5e03e2ca7d25b899b129baad2dd5eca6bf99d88a |
06-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
More multi-user stuff: - New (hidden) isUserRunning() API. - Maintain LRU list of visited users. - New FLAG_IS_DATA_ONLY for ApplicationInfo. - Clean up pending intent records when force-stopping a user (or package). (Also fixes bug #6880627: PendingIntent.getService() returns stale intent of force stopped app) - Fix force-stopping when installing an app to do the force-stop across all users for that app. - When selecting which processes to kill during a force stop, do this based on the actual packages loaded in the process, not just process name matching. - You can now use --user option in am when starting activities, services, and instrumentation. - The am --user option accepts "current" and "all" as arguments. - The pm uninstall command now uninstalls for all users, so it matches the semantics of the install command. - PhoneWindowManager now explicitly says to start home in the current user. - Activity manager call to retrieve the MIME type from a content provider now takes a user argument, so it will direct this to the proper user. - The package manager uninstall paths are now implemented around PackageSetting, not PackageParser.Package. This allows them to work even if the application's apk has been removed (in which case it only exists as a PackageSetting, not the PackageParser.Package parsed from the apk). Change-Id: I3522f6fcf32603090bd6e01cc90ce70b6c5aae40
ndroid/commands/pm/Pm.java
|
4120375d46091df8527bb701882e056fbb0e6b06 |
31-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Remove Binder.getOrigCallingUid(). Replaced all remaining places that used it with explicit user specification. While doing this, I ran into stuff that was creating PendingIntent objects (that now need to specify the explicit user they are for), which are also posting notifications... but have no way to specify the user for the notification. So the notification manager in the system process now also gets a formal concept of a user associated with the notification, which is passed in to all the necessary aidl calls. I also removed the old deprecated aidl interface for posting/cancelling notifications, since we now always need a user supplied. There is more work that needs to be done here, though. For example I think we need to be able to specify USER_ALL for a notification that should be shown to all users (such as low storage or low battery). Along with that, the PendingIntent creation needs to be tweaked to be able to handle USER_CURRENT by evaluating the user at the point the pending intent is sent. That's for another change, however. Change-Id: I468e14dce8def0e13e0870571e7c31ed32b6310c
ndroid/commands/pm/Pm.java
|
786b44046a79d6c4c9cd07f5989d491c7196ad80 |
28-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix installing applications from non-primary users. We also now send the correct broadcasts to each user. You no longer need to be running the shell as root to be able to create/remove users. Also added some more man page material to the pm command, and got rid of a bunch of showUsage() calls that now make error messages completely buried because of how large the usage info has become. And the package manager now shows the user each historical broadcast was sent to. Change-Id: Iab42498e1352a0c023069139c80fc04d2d69ab4b
ndroid/commands/pm/Pm.java
|
7e0e19d4201374d72b7082492bd269dbdb17d972 |
27-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Restore man page entries. Change-Id: I002808037ec117c039aeb71f425c1f43d4cac6d8
ndroid/commands/pm/Pm.java
|
7767eac3232ba2fb9828766813cdb481d6a97584 |
24-Aug-2012 |
Dianne Hackborn <hackbod@google.com> |
Keep track of whether an app is installed for each user. This add a new per-user state for an app, indicating whether it is installed for that user. All system apps are always installed for all users (we still use disable to "uninstall" them). Now when you call into the package manager to install an app, it will only install the app for that user unless you supply a flag saying to install for all users. Only being installed for the user is just the normal install state, but all other users have marked in their state for that app that it is not installed. When you call the package manager APIs for information about apps, uninstalled apps are treated as really being not visible (somewhat more-so than disabled apps), unless you use the GET_UNINSTALLED_PACKAGES flag. If another user calls to install an app that is already installed, just not for them, then the normal install process takes place but in addition that user's installed state is toggled on. The package manager will not send PACKAGE_ADDED, PACKAGE_REMOVED, PACKAGE_REPLACED etc broadcasts to users who don't have a package installed or not being involved in a change in the install state. There are a few things that are not quite right with this -- for example if you go through a full install (with a new apk) of an app for one user who doesn't have it already installed, you will still get the PACKAGED_REPLACED messages even though this is technically the first install for your user. I'm not sure how much of an issue this is. When you call the existing API to uninstall an app, this toggles the installed state of the app for that user to be off. Only if that is the last user user that has the app uinstalled will it actually be removed from the device. Again there is a new flag you can pass in to force the app to be uninstalled for all users. Also fixed issues with cleaning external storage of apps, which was not dealing with multiple users. We now keep track of cleaning each user for each package. Change-Id: I00e66452b149defc08c5e0183fa673f532465ed5
ndroid/commands/pm/Pm.java
|
706e8ba26bf0de19ad5f736516dae40c4c88c2d7 |
20-Aug-2012 |
rich cannings <richc@google.com> |
Pass URLs to package verifiers This change passes the originating URL and accompanied referrer to package verifiers, when available. Bug: 6544677 Change-Id: I9ebc71bc13f549bd88267e444816151a99bda000
ndroid/commands/pm/Pm.java
|
258848d2ae04f447ff1c18023fa76b139fcc0862 |
11-Aug-2012 |
Amith Yamasani <yamasani@google.com> |
User Manager service to manage users and query user details Moved a bunch of methods from PackageManager to UserManager. Fix launching of activities from recents to correct user. Guest creation APIs Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
ndroid/commands/pm/Pm.java
|
e1d7c711df3e3a2d2f195457882aa4ddb5626167 |
08-Aug-2012 |
Rich Cannings <richc@google.com> |
Revert "Pass URLs to package verifiers" This reverts commit 24713907fe4632d263aea82f7a35c8fb08918a09 Change-Id: Ie04ba73475b813635c4a74915c45e83250801b6b
ndroid/commands/pm/Pm.java
|
24713907fe4632d263aea82f7a35c8fb08918a09 |
26-Jul-2012 |
rich cannings <richc@google.com> |
Pass URLs to package verifiers This change passes the originating URL and accompanied referrer to package verifiers, when available. Bug: 6544677 Change-Id: If9ff6663ad7f3426b7aea2aceb1413b689788138
ndroid/commands/pm/Pm.java
|
197a0c82a1fbf337ec0a85d36b6b89c3d6e8a0ac |
12-Jul-2012 |
Dianne Hackborn <hackbod@google.com> |
Improve cleanup of file caches. This rewrites installd's code for deleting cache files to be better: - Isn't really stupid about just deleting directories in the order they are found on the filesytem; now collects all cache files and sorts them by mod time to determine which to delete. - Also deletes cache files in /data/media and for all users. This also tweaks DeviceStorageMonitor to be a little smarter about deciding when to flush cache files, having upper and lower limits that it allows memory to get down to and then flash files to reach the higher free storage limit. This should reduce the amount that we perform flushing when starting to reach the storage limit. Finally add a new pm command to force a cache flush. Change-Id: I02229038e1ad553d1168393e5cb6d5025933271d
ndroid/commands/pm/Pm.java
|
fd3d009dde21d7670d42d26f197f67c4c8e59184 |
31-May-2012 |
Amith Yamasani <yamasani@google.com> |
Remove some unnecessary man page entries Change-Id: I1ceda3f5efac83b80ab4b6e7cae4086aeed5062a
ndroid/commands/pm/Pm.java
|
ceb1b0bfaea56251796b08c07b963de7403d84eb |
24-Apr-2012 |
Anonymous Coward <nobody@android.com> |
Add encryption parameters to package installation Change-Id: Ic9f8ab9f8110f08bb3c00725cfce5b8ee7b766f3
ndroid/commands/pm/Pm.java
|
719a6320a789e76566d6416d5ec35491d21f5c44 |
30-Apr-2012 |
Jeff Sharkey <jsharkey@android.com> |
Change permission enforcement through pm command. Add "set-permission-enforced", which can currently only mutate enforcement of READ_EXTERNAL_STORAGE. Bug: 6363043 Change-Id: I3f7929738c8c36b0a54fbf171c03fe16c09b5d99
ndroid/commands/pm/Pm.java
|
483f3b06ea84440a082e21b68ec2c2e54046f5a6 |
14-Mar-2012 |
Amith Yamasani <yamasani@google.com> |
Package restrictions per user Packages can be enabled/disabled per user. This requires maintaining stopped/launched states and enabled / disabled components and packages per user. Refactored pm.Settings and PackageSettingsBase to keep track of states per user. Migrated the stopped-packages.xml to users/<u>/package-restrictions.xml Changed intent resolution to handle individual user restrictions. Bunch of IPackageManager calls now have a userId argument. Make AppWidgetService handle removals of packages. Added some tests for pm.Settings and PackageManager. Change-Id: Ia83b529e1df88dbcb3bd55ebfc952a6e9b20e861
ndroid/commands/pm/Pm.java
|
e639da7baa23121e35aa06d6e182558e0e755696 |
22-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
New development permissions. These are permissions that an application can request, but won't normally be granted. To have the permission granted, the user must explicitly do so through a new "adb shell pm grant" command. I put these permissions in the "development tools" permission group. Looking at the stuff there, I think all of the permissions we already had in that group should be turned to development permissions; I don't think any of them are protecting public APIs, and they are really not things normal applications should use. The support this, the protectionLevel of a permission has been modified to consist of a base protection type with additional flags. The signatureOrSystem permission has thus been converted to a signature base type with a new "system" flag; you can use "system" and/or "dangerous" flags with signature permissions as desired. The permissions UI has been updated to understand these new types of permissions and know when to display them. Along with doing that, it also now shows you which permissions are new when updating an existing application. This also starts laying the ground-work for "optional" permissions (which development permissions are a certain specialized form of). Completing that work requires some more features in the package manager to understand generic optional permissions (having a facility to not apply them when installing), along with the appropriate UI for the app and user to manage those permissions. Change-Id: I6571785c6bb5f6b291862b7a9be584885f88f3a5
ndroid/commands/pm/Pm.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
ndroid/commands/pm/Pm.java
|
92a208c6d3e0fdae54bbc942e7e041e48812bcaa |
02-Nov-2011 |
Ashish Sharma <ashishsharma@google.com> |
Add a command option to display installerPackageName Change-Id: I2e5cb5891c610531d9ba7c359fd5dd521f8ecfec
ndroid/commands/pm/Pm.java
|
5ab2157bf1f105b02d3e2913cd3a33f9765b74ca |
27-Jul-2011 |
Kenny Root <kroot@google.com> |
Infrastructure to support package verifier Allow a package verifier to approve or disapprove of a package being installed. Change-Id: Ibfea0f2b1aaa4ab1589a4e59f96144702b9bf94b
ndroid/commands/pm/Pm.java
|
46d110329e659cc9cb9514e220ce273701eb151d |
24-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Small cleanup of am/pm commands. Change-Id: I5af730bc177635821a82d4dd3ec9130a5dcd525a
ndroid/commands/pm/Pm.java
|
0ac3031c159a0904e73eb4439cdc724d8df4a6e6 |
17-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Implement remaining infrastructure for user disabling apps. Change-Id: If8135eb0e27ec36f8f159eb7b6397add7acd0299
ndroid/commands/pm/Pm.java
|
a51b6fd6f8a53f040894ef07cf23695581595e6b |
20-May-2011 |
Kenny Root <kroot@google.com> |
resolved conflicts for merge of b2d0ee16 to master Change-Id: I4483a6d0ccecfea4a1e66bb6eba80d13e8b9a3a4
|
e6cd0c747e76723bc51a23925c239ae10f9d3b5c |
19-May-2011 |
Kenny Root <kroot@google.com> |
resolved conflicts for merge of 2433c443 to honeycomb-plus-aosp Change-Id: I3385f57e5761679e6700bcbe3c41deb3ecd43ba1
|
2433c443bb5fe96d9a39b59e10e3c03d791e2278 |
19-May-2011 |
Kenny Root <kroot@google.com> |
am f2006f31: Merge "Break apart queries to getInstalled* API" into gingerbread * commit 'f2006f3123dcdf598e052051041b49c89710b53e': Break apart queries to getInstalled* API
|
3d0724dc220a2e027b9e38f61c39c84c28a505d5 |
13-May-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 0e59729b to master Change-Id: I2d3a6bddf66b1df0c101c45ea2fec1cf65caf01b
|
0f1de9adde0b52d2a385a76232bd7ac30c3eeea2 |
12-May-2011 |
Dianne Hackborn <hackbod@google.com> |
New compat mode front end: UI and persistence. Adds a really crappy UI for toggling compat mode. Persists compat mode selection across boots. Turns on compat mode by default for newly installed apps. Change-Id: Idc83494397bd17c41450bc9e9a05e4386c509399
ndroid/commands/pm/Pm.java
|
0e2c0f37d98bb5539b0fe41865aaf1add0ff1bb3 |
16-Apr-2011 |
Kenny Root <kroot@google.com> |
Break apart queries to getInstalled* API To avoid blowing past the Binder IPC limit, change the PackageManagerService to have a DB-like interaction where the client tells the service the last "row" that it read. The fact that we use a HashMap instead of a TreeMap makes this problematic. For now we're just making a new ArrayList for the keys and then sorting them for each call. This can make the API slower for callers of this, but it's probably greatly overshadowed by the cost of the data transfer itself. Bug: 4064282 Change-Id: Ic370fd148d4c3813ae4f2daffa1a7c28d63d5a09
ndroid/commands/pm/Pm.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
ndroid/commands/pm/Pm.java
|
c39bb4aaa7be1b9b0cc9fb0b1f03d54f7609ffeb |
28-Feb-2011 |
Kenny Root <kroot@google.com> |
Switch to returnCode for IPackageDeleteObserver Before the IPackageDeleteObserver only knew whether the deletion succeeded or failed, but not the reason why. Bug: 2520191 Change-Id: I1f0d7c04f06c539660b6e17e7e133defb0f61b5b
ndroid/commands/pm/Pm.java
|
4f05220d10338b6ad668c87e70cbe7b9914a9047 |
09-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
Merge commit '690d20bb53ba2485f59d128b365eff991d5cc3e6' into manualmerge
|
95db1cfc741c23c7f4192128e3b7bb3c43761bdb |
09-Jan-2011 |
Dianne Hackborn <hackbod@google.com> |
am cd23823d: Merge "Fix issue # 3227963: SecurityException: Neither user 10023 nor..." into gingerbread * commit 'cd23823d4f533431c76baa104eb50b7803b3b391': Fix issue # 3227963: SecurityException: Neither user 10023 nor...
|
690d20bb53ba2485f59d128b365eff991d5cc3e6 |
22-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue # 3227963: SecurityException: Neither user 10023 nor... ...current process has android.permission.WAKE_LOCK When updating a system app, we would actually uninstall the package of the system app, which also meant removing its uid...! It was just luck that we would get the same uid when installing the update after that. During that time, if anyone tried to do anything related to that uid, it would be unknown. This change tweaks how we go about replacing system apps by making it more like normal apps -- to make this work, if we need to disable the system app, we generate a new PackageSetting from the current system app and replace it into our data structures, so we can update that without trashing the current correct information about the (still actually there) system app. Also fixed a problem where we were not killing the currently running app before installing, like we do when updating a normal application. And fixed a problem where we were not deleting the /data .apk when uninstalling a system app update. And added a new option to the "pm" command to clear the data associated with an app. Change-Id: I0e879677849aa42950a3c360bf78ad820e87674b
ndroid/commands/pm/Pm.java
|
ccc714131359eb1022d8c6702b7d82ab9e93f27c |
13-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 78e9f4cb to master Change-Id: I1135361e6d66f524c3f349e2bf1f31bd4191c634
|
78e9f4cbaece783b7b87ce3fb0a157dae766012a |
13-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> packages+ map * commit 'e4a5951925f16f18dae91ed65567e96528f17fee': Fix issue #3154576: battery stats checkin should include UID -> packages+ map
|
e4a5951925f16f18dae91ed65567e96528f17fee |
07-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3154576: battery stats checkin should include UID -> packages+ map Includes some other small fixes to battery collection and a few other things. Output of package info looks like this: 5,0,i,uid,1000,com.android.settings 5,0,i,uid,1000,com.android.providers.subscribedfeeds 5,0,i,uid,1000,com.android.providers.settings 5,0,i,uid,1000,com.android.server.vpn 5,0,i,uid,1000,android 5,0,i,uid,1000,com.android.systemui 5,0,i,uid,1000,com.google.android.backup 5,0,i,uid,1001,com.android.phone 5,0,i,uid,1001,com.android.providers.telephony 5,0,i,uid,1022,com.android.nfc 5,0,i,uid,10021,com.google.android.location 5,0,i,uid,10021,com.google.android.syncadapters.calendar 5,0,i,uid,10021,com.google.android.gsf 5,0,i,uid,10021,com.google.android.syncadapters.contacts 5,0,i,uid,10026,com.android.providers.downloads.ui 5,0,i,uid,10026,com.android.providers.media 5,0,i,uid,10026,com.android.providers.drm 5,0,i,uid,10026,com.android.providers.downloads 5,0,i,uid,10032,com.android.launcher 5,0,i,uid,10039,com.google.android.gm 5,0,i,uid,10041,com.google.android.gallery3d 5,0,i,uid,10049,com.android.providers.calendar Change-Id: I9e38f254eef146339113ad270f5c6e8b60fb7a1d
ndroid/commands/pm/Pm.java
|
edebb2fe1d1c4d3ad17db91cd7e2bfe8feafd0b7 |
02-Dec-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am b087ceea: am 40eade14: Merge from open-source master * commit 'b087ceead79bcb304e5793c6ae9109ce590847dc': Fix crash by "adb shell pm list permissions -f|-s"
|
1c3274ca12a6931568693b897c269107f0346eab |
30-Nov-2010 |
Ali Utku Selen <aliutku.selen@sonyericsson.com> |
Fix crash by "adb shell pm list permissions -f|-s" pm command makes the assumption that every permission should contain android:description and android:label attributes while they are not mandatory. If a permission does not contain these two attributes, we get "android.content.res. Resources$NotFoundException: String resource ID #0x0" followed by a NPE when using -f or -s options. With the following change, users will get "null" in output for respective fields. Change-Id: I4e7f407592fa071abdab1d979775f46ec27dc9d2
ndroid/commands/pm/Pm.java
|
babe28e01c6e845e41f8a7d23ab0b2a2c93a2e6b |
31-Aug-2010 |
Joe Malin <jmalin@google.com> |
Doc change: Update pm command usage for test packages Change-Id: If9c51e0265394538023a913fa271dfb80f14a92e
ndroid/commands/pm/Pm.java
|
40e472521a544f26cb6956995788f7c36fff1404 |
08-Apr-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Fix 2579461 Move install location values to secure settings. Diable attribute for UI. Set default value to auto. Add command line interface to set install location via pm. Change-Id: I80e97b3d24845adad7102f40dcbe238f00efa406
ndroid/commands/pm/Pm.java
|
e99bb5f10b90736d10cee9729b56cba156fc0921 |
19-Mar-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Add new method call back in MountService. PackageManager invokes this call back when its done handling the media status update. Add new uid check for updateExternalMediaStatus Change killPids method in ActivityManager. Remove mountsd command in Pm.java We cannot arbitrarily enable/disable packages in PackageManager now. Change-Id: I28dcba4afd2b4486f68abdaa1628a31b66544c91
ndroid/commands/pm/Pm.java
|
14b6abda1309631d49d4bebbb0317a7e1dfc0a50 |
17-Mar-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Add new install flag to install on internal flash only Change default install location policy for new flag. New error code for media unavailable. Change-Id: I5a5d0828b067692b2b94a15a2bcc7534f796c1a2
ndroid/commands/pm/Pm.java
|
8946dd3355fc1dcbad872c0546e356474d4cc5de |
19-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Move package from internal to external and vice versa.
ndroid/commands/pm/Pm.java
|
5b993ce7bc29e43a3215a50ce6ce5d6550d4e5e2 |
12-Feb-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Include install location preference when installing packages. Changes include Add new remote call in default container service to determine install location. Rename INSTALL_ON_SDCARD Remove recommentAppInstall method Add some additional flags used in remote stubs. Move check for protected apps prior to copy. Unit tests DefaultContainerService first parses the file uri(if content uri is specified it returns a default install internal only value) and returns a recommended location. Based on which the temporary id is determined either a file name or a container id and the file is copied there. This is then later renamed during install. Todo's light weight parsing of package when determining location since we just need the install location attribute only when finding out recomended location. This will also enable to move the check for updated system apps(cannot be on sdcard) prior to copying.
ndroid/commands/pm/Pm.java
|
fd3530f90562bb7e66edfee39d90fc8beda82f1d |
18-Jan-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
Mount/Unmount secure containers Persist flags in PackageSetting. Flags are relevant to ApplicationInfo.FLAG_SYSTEM, Application.FLAG_ON_SDCARD, ApplicationInfo.FLAG_FORWARD_LOCK. New pm command to simulate mount/unmount in Pm. This will be removed when MountService/vold event generation gets fixed. Calls from MountService into PackageManager when media gets mounted/unmounted. Scan the packages and grant permissions when the sdcard gets mounted. This api might change again.
ndroid/commands/pm/Pm.java
|
af8e9f4805643f90a9dc0ecfa119e0a860c12f8a |
12-Jan-2010 |
Suchi Amalapurapu <asuchitra@google.com> |
app install on sdcard. provide skeleton implementation to install an app on sdcard, just resources. Add new install path for /asec in installd. ignore . when checking for apk path since the sdcard packages id'ed by package name. Add new -s option to adb shell pm Refactor fwd locked from scanMode to ApplicationInfo. Add new flag for sd install Add new parse flags for fwd locking and installing on sdcard New mock api's in PackageManagerService to invoke MountService api's. These will be refactored again and so have been wrapped internally. Some error codes in PackageManager Changes in PackageManagerService to use mPath and mScanPath during installation and switch to using PackageParser.Package.applicationInfo attributes for source and public resource directories. Some known issues that will be addressed later using system_uid for now. needs some tinkering with uid and packagesetting creation to use the actual app uid error handling from vold not very robust. ignoring lot of things for now sending a delayed destroy to delete packages. will revisit later revisit temp file creation later. just copy for now
ndroid/commands/pm/Pm.java
|
039c68e75606e837cf021815a0210836724574ad |
27-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
The touch screen is probably a feature. Also extend the feature APIs a bit. Change-Id: I99e932d7f4e61edb0e20f75c55e9831e4b59a14d
ndroid/commands/pm/Pm.java
|
23b4faf69437b732d681d9bee5c9a84379d5ccad |
25-Sep-2009 |
Xavier Ducrohet <xav@android.com> |
Use reflection to figure out a readable string from install error code. Instead of a switch that needs to be maintained, the code now look for public static final int fields in PackageManager whose names start with INSTALL_FAILED or INSTALL_PARSE_FAILED. If their int value match the error code, the name of the field is used as a human readable error string. Change-Id: If58ddc4d9ccc40a9a8aaec9de4cc7e4931db0292
ndroid/commands/pm/Pm.java
|
f03fb486ac089bf68ae3bfe7b6687dd4b928a340 |
01-Sep-2009 |
Xavier Ducrohet <xav@android.com> |
Add error output to pm for FAILED_MISSING_FEATURE Change-Id: Ib9955b69b69db7d442402ab33e148cb40dec3d40
ndroid/commands/pm/Pm.java
|
b181118b6e58c0014da4e9d52bf38548adc73a8a |
22-May-2009 |
Dianne Hackborn <hackbod@google.com> |
Define TARGET_CPU_ABI for finding native code in .apks
ndroid/commands/pm/Pm.java
|
ade3ecad94d1f4431576f53bae26c35efbf7a2c9 |
12-May-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement issue #1783881 (manifest option for adb-install-only apps) You can now use android:testOnly="true" to not allow your .apk to be installed as a normal app. The only way to do so is with the pm command and giving the -t option, which sets a new INSTALL_ALLOW_TEST flag when installing. I also used this to clean up the install API... actually, mostly to hide it, since it is not accessible to apps so shouldn't be in the SDK. We will be doing some more work on it, so this will prevent adding yet another backwards-compatibility-for-no-reason version.
ndroid/commands/pm/Pm.java
|
c64322c35212e919906ffd66118c7d5d3ad36636 |
28-Apr-2009 |
Jacek Surazski <jaceks@google.com> |
PackageManager keeps track of who installed what. Stores the package name of the installer app in packages.xml
ndroid/commands/pm/Pm.java
|
851a54143c15a1c33361efae2db3f7f45059b472 |
08-May-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement targetSdkVersion and maxSdkVersion, plus version code names. This adds new attributes for specifying a targetSdkVersion and maxSdkVersion. There is a new ApplicationInfo flag that is set if the application has set its targetSdkVersion to the current platform or later. Also you can now use a string for minSdkVersion and targetSdkVerion, to indicate you are building against a development tree instead of an official platform.
ndroid/commands/pm/Pm.java
|
105925376f8d0f6b318c9938c7b83ef7fef094da |
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
ndroid/commands/pm/Pm.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid/commands/pm/Pm.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid/commands/pm/Pm.java
|
b798689749c64baba81f02e10cf2157c747d6b46 |
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
ndroid/commands/pm/Pm.java
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
ndroid/commands/pm/Pm.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
ndroid/commands/pm/Pm.java
|