summaryrefslogtreecommitdiffstats
path: root/cmds/pm
Commit message (Collapse)AuthorAgeFilesLines
* Infrastructure to support package verifierKenny Root2011-08-151-4/+19
| | | | | | | Allow a package verifier to approve or disapprove of a package being installed. Change-Id: Ibfea0f2b1aaa4ab1589a4e59f96144702b9bf94b
* Small cleanup of am/pm commands.Dianne Hackborn2011-06-241-51/+50
| | | | Change-Id: I5af730bc177635821a82d4dd3ec9130a5dcd525a
* Implement remaining infrastructure for user disabling apps.Dianne Hackborn2011-06-171-0/+7
| | | | Change-Id: If8135eb0e27ec36f8f159eb7b6397add7acd0299
* resolved conflicts for merge of b2d0ee16 to masterKenny Root2011-05-191-1/+19
|\ | | | | | | Change-Id: I4483a6d0ccecfea4a1e66bb6eba80d13e8b9a3a4
| * resolved conflicts for merge of 2433c443 to honeycomb-plus-aospKenny Root2011-05-191-2/+19
| |\ | | | | | | | | | Change-Id: I3385f57e5761679e6700bcbe3c41deb3ecd43ba1
| | * am f2006f31: Merge "Break apart queries to getInstalled* API" into gingerbreadKenny Root2011-05-191-2/+19
| | |\ | | | | | | | | | | | | | | | | * commit 'f2006f3123dcdf598e052051041b49c89710b53e': Break apart queries to getInstalled* API
| | | * Break apart queries to getInstalled* APIKenny Root2011-04-191-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * | am cd23823d: Merge "Fix issue # 3227963: SecurityException: Neither user ↵Dianne Hackborn2011-01-091-0/+59
| | |\ \ | | | |/ | | | | | | | | | | | | | | | | | | | | 10023 nor..." into gingerbread * commit 'cd23823d4f533431c76baa104eb50b7803b3b391': Fix issue # 3227963: SecurityException: Neither user 10023 nor...
* | | | resolved conflicts for merge of 0e59729b to masterDianne Hackborn2011-05-121-4/+15
|\ \ \ \ | |/ / / | | | | | | | | Change-Id: I2d3a6bddf66b1df0c101c45ea2fec1cf65caf01b
| * | | New compat mode front end: UI and persistence.Dianne Hackborn2011-05-121-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Plumbing in PackageManager and installd for multi-user support.Amith Yamasani2011-04-151-1/+71
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | | Switch to returnCode for IPackageDeleteObserverKenny Root2011-03-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Before the IPackageDeleteObserver only knew whether the deletion succeeded or failed, but not the reason why. Bug: 2520191 Change-Id: I1f0d7c04f06c539660b6e17e7e133defb0f61b5b
* | | Merge commit '690d20bb53ba2485f59d128b365eff991d5cc3e6' into manualmergeDianne Hackborn2011-01-091-0/+59
|\ \ \ | | |/ | |/|
| * | Fix issue # 3227963: SecurityException: Neither user 10023 nor...Dianne Hackborn2010-12-221-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...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
* | | resolved conflicts for merge of 78e9f4cb to masterDianne Hackborn2010-12-131-8/+68
|\ \ \ | | |/ | |/| | | | Change-Id: I1135361e6d66f524c3f349e2bf1f31bd4191c634
| * | am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> ↵Dianne Hackborn2010-12-131-8/+68
| |\ \ | | |/ | | | | | | | | | | | | | | | packages+ map * commit 'e4a5951925f16f18dae91ed65567e96528f17fee': Fix issue #3154576: battery stats checkin should include UID -> packages+ map
| | * Fix issue #3154576: battery stats checkin should include UID -> packages+ mapDianne Hackborn2010-12-131-8/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | am b087ceea: am 40eade14: Merge from open-source masterJean-Baptiste Queru2010-12-021-3/+5
|\ \ \ | |/ / | | | | | | | | | * commit 'b087ceead79bcb304e5793c6ae9109ce590847dc': Fix crash by "adb shell pm list permissions -f|-s"
| * | Fix crash by "adb shell pm list permissions -f|-s"Ali Utku Selen2010-11-301-3/+5
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Doc change: Update pm command usage for test packagesJoe Malin2010-08-311-1/+4
|/ | | | Change-Id: If9c51e0265394538023a913fa271dfb80f14a92e
* Fix 2579461Suchi Amalapurapu2010-04-071-3/+69
| | | | | | | | 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
* Add new method call back in MountService.Suchi Amalapurapu2010-03-221-37/+0
| | | | | | | | | | | 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
* Add new install flag to install on internal flash onlySuchi Amalapurapu2010-03-171-1/+5
| | | | | | | Change default install location policy for new flag. New error code for media unavailable. Change-Id: I5a5d0828b067692b2b94a15a2bcc7534f796c1a2
* Move package from internal to external and vice versa.Suchi Amalapurapu2010-02-191-0/+1
|
* Include install location preference when installing packages.Suchi Amalapurapu2010-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | 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.
* Mount/Unmount secure containersSuchi Amalapurapu2010-01-191-0/+40
| | | | | | | | | 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.
* app install on sdcard. provide skeleton implementationSuchi Amalapurapu2010-01-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | 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
* The touch screen is probably a feature.Dianne Hackborn2009-09-261-0/+45
| | | | | | Also extend the feature APIs a bit. Change-Id: I99e932d7f4e61edb0e20f75c55e9831e4b59a14d
* Use reflection to figure out a readable string from install error code.Xavier Ducrohet2009-09-251-127/+74
| | | | | | | | | | | 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
* Add error output to pm for FAILED_MISSING_FEATUREXavier Ducrohet2009-08-311-0/+3
| | | | Change-Id: Ib9955b69b69db7d442402ab33e148cb40dec3d40
* Define TARGET_CPU_ABI for finding native code in .apksDianne Hackborn2009-05-221-0/+3
|
* Implement issue #1783881 (manifest option for adb-install-only apps)Dianne Hackborn2009-05-121-19/+25
| | | | | | | | | | | 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.
* PackageManager keeps track of who installed what.Jacek Surazski2009-05-121-2/+12
| | | | Stores the package name of the installer app in packages.xml
* Implement targetSdkVersion and maxSdkVersion, plus version code names.Dianne Hackborn2009-05-081-0/+3
| | | | | | | | 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.
* auto import from //branches/cupcake_rel/...@140373The Android Open Source Project2009-03-181-5/+8
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-035-0/+1057
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-035-1057/+0
|
* auto import from //branches/cupcake/...@125939The Android Open Source Project2009-01-091-0/+61
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-5/+96
|
* Initial ContributionThe Android Open Source Project2008-10-215-0/+905