summaryrefslogtreecommitdiffstats
path: root/cmds
Commit message (Collapse)AuthorAgeFilesLines
* Merge "pm path needs to return 0 when it succeeds." into lmp-mr1-devHui Shu2015-01-051-1/+1
|\
| * pm path needs to return 0 when it succeeds.Hui Shu2014-12-121-1/+1
| | | | | | | | | | BUG: 18721587 Change-Id: I2136d1933e62a20645517d17c1365d214509de16
* | shell based UI Automator source moveGuang Zhu2014-12-1243-0/+9054
| | | | | | | | | | | | | | | | | | | | | | | | frameworks/testing/uiautomator -> frameworks/base/cmds/uiautomator (samples, utils sub folders exlcuded) frameworks/testing/uiautomator/utils -> frameworks/base/tests/utils no source files changed, only one line makefile update (for UI Automator API check) Bug: 18708851 Change-Id: I396bd386d3d55a52df18af183685daf80caa9f73
* | Switch to libsigchain.aDmitriy Ivanov2014-12-102-27/+7
| | | | | | | | | | | | | | | | | | | | Use LOCAL_WHOLE_STATIC_LIBRARIES to instruct static linker to export symbols from the static library. (cherry picked from commit 5ba317cee071b718a163ab9acf2b6b4f6a337b39) Bug: 18701723 Change-Id: Id9b567a1529574eab2225777f1f2a5ea10e540ad
* | Work on issue #18572506: AppOps in-memory state is invalid after...Dianne Hackborn2014-12-031-10/+197
|/ | | | | | | | | | | | ...uninstalling updates to a system app Things seem to be working fine, however we were not as aggressive at writing out the current state in this case as we probably should be. Also introduce more features to the appops command, which are useful for testing this. Change-Id: I177a9cc0e16e98b76fee0d052d742e06842bb3f9
* Better am error when SELinux blocking access.Jeff Sharkey2014-11-241-3/+21
| | | | | Bug: 18479882 Change-Id: I0732e54838c4e04d9d727e7c5fd9d7e7bacbaa1f
* Merge "Add new subcommand 'set-active-admin' to the dpm command." into ↵Zoltan Szatmary-Ban2014-11-241-0/+27
|\ | | | | | | lmp-mr1-dev
| * Add new subcommand 'set-active-admin' to the dpm command.Zoltan Szatmary-Ban2014-11-191-0/+27
| | | | | | | | | | Bug: 18002490 Change-Id: I91746032df08ef0fdef05711114691da18796a0a
* | Fix issue #15828903: Intent.parseUri allows call to FLAG_GRANT_*_URI_PERMISSIONDianne Hackborn2014-11-201-4/+1
| | | | | | | | | | | | You now need to set a flag if you want this unsafe behavior. Change-Id: I185e9a04e005e42a887c3d58a2818616790b060a
* | Fix issue with call backs from media process.Dianne Hackborn2014-11-191-1/+1
|/ | | | | | | | | | | | | | | | | | | | All but a few lines of this is for issue #16013164, which allowed apps to do some operations as the media uid by having it call back to them to open a file. The problem here is with the tempory identity stuff in the activity manager, allowing us to make the open call as the original caller... ideally we should figure out a way to just get rid of all of that, but the solution here is actually easier (even though it doesn't look it) -- we now hand a token over to the openFile() call that it can use when doing permission checks to say "yes I would like the check to be against whoever is responsible for the open". This allows us to do the uid remapping for only this one specific set of permission checks, and nothing else. Also fix issue #17487348: Isolated services can access system services they shouldn't be able to. Don't send any system service IBinder objects down for the first initialization of an isolated process. Change-Id: I3c70e16e0899d7eef0bae458e83958b41ed2b75e
* Teach bmgr that "android" is a valid package nameChristopher Tate2014-11-131-1/+1
| | | | | | Bug 18379037 Change-Id: I4d6da2893f83e672920bbda9447aa4cbd1ecec7b
* Add Activity API to get referrer information.Dianne Hackborn2014-11-111-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This expands the use of EXTRA_REFERRER to be relevant anywhere, allowing apps to supply referrer information if they want. However, if they don't explicitly supply it, then the platform now keeps track of package names that go with Intents when delivering them to apps, which it can be returned as the default value. The new method Activity.getReferrer() is used to retrieve this referrer information. It knows about EXTRA_REFERRER, it can return the default package name tracked internally, and it also can return a new EXTRA_REFERRER_NAME if that exists. The latter is needed because we can't use EXTRA_REFERRER in some cases since it is a Uri, and things like #Intent; URI extras can only generate primitive type extras. We really need to support this syntax for referrers, so we need to have this additional extra field as an option. When a referrer is to a native app, we are adopting the android-app scheme. Since we are doing this, Intent's URI creation and parsing now supports this scheme, and we improve its syntax to be able to build intents with custom actions and stuff, instead of being all hung up on custom schemes. While doing this, fixed a problem when parsing both intent: and new android-app: schemes with a selector portion, where we were not respecting any scheme that was specified. Change-Id: I06e55221e21a8156c1d6ac755a254fea386917a2
* Merge "More flexible intent extra parsing." into lmp-mr1-devDaniel Sandler2014-11-051-4/+19
|\
| * More flexible intent extra parsing.Daniel Sandler2014-10-291-4/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifically, --ei (int extras) and --eia (int[] extras) now use Integer.decode(), which means they accept negative integers, base-16 integers formatted as #NNN and 0xNNN, and base-8 integers formatted as 0NNN. Additionally, --ez (boolean extras) can now be specified as "true", "false", "t", "f", or an integer (any nonzero treated as true). The previous behavior, based on Boolean.valueOf(), would silently assign false if you managed to get the spelling of "true" wrong. Change-Id: I058254e907308006d403b5b7866c86bcaa03d8d3
* | Have Pm return the correct codeEvan Charlton2014-10-311-147/+185
|/ | | | | | | If the command fails, have Pm return a nonzero exit code. Bug: 18085950 Change-Id: I3de1b8f69aa8f44b2e2109864c1aa093e3b82141
* Link sigchain to main executableDmitriy Ivanov2014-10-162-2/+32
| | | | | | | | | | | | Also export necessary symbols to preempt calls from libart.so Bug: 15345057 Bug: 15426766 (cherry picked from commit 96e0cfa721925550b1cc39cdfd6084a878e6ffe2) Change-Id: I0930d96edde7dc0636e8d50d7c778f099237f748
* Improve some docs, fix some debugging.Dianne Hackborn2014-10-091-5/+3
| | | | | | | | | | | | | | | | | | - Add docs to Binder, Messenger, ResultReceier to explain their relation (or lack there-of) to process lifecycle. - Clarify some aspects of process lifecycle for services. - Fix help text of am command. - Fix per-package dumping of battery stats to not include history. - Fix per-package dumping of proc stats to only include aggregated and current stats and fix some formatting. - Fix per-process dumping of meminfo to have an option to interpret the input as a package, so including all processes that are running code of that package. - Fix top-level per-package debug output to correctly include all of these improvements and give them a little more time (10s) to complete for timing out. Change-Id: I2a04c0f862bd47b08329443d722345a13ad9b6e2
* bootanimation: Tweak parameters for pcm_open for playing boot sounds.Mike Lockwood2014-10-071-0/+3
| | | | | | Set start_threshold and avail_min to 1/4th period size and stop_threshold to INT_MAX Change-Id: I0a3aac18533709daa86a024cdd6a32086410723a
* Add support for playing audio during bootanimationMike Lockwood2014-10-035-18/+421
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bootanimation daemon will play 16 bit WAV files contained in bootanimation.zip For this to work, the bootanimation.zip must contain an audio_conf.txt file, which contains parameters to be used for the tinyalsa pcm_open call as well as mixer parameters to set before attempting to play the sound. If the bootanimation finds an audio_conf.txt file, then it will look for a file named "audio.wav" in each of the part subdirectories. If audio.wav is found, it will play that WAV file starting at the beginning of that part. The code for this is based on the tinyplay utility in tinyalsa. The audio_conf.txt and must begin with the following header: card=<ALSA card number> device=<ALSA device number> period_size=<period size> period_count=<period count> This header is followed by zero or more mixer settings, each with the format: mixer "<name>" = <value list> Since mixer names can contain spaces, the name must be enclosed in double quotes. The values in the value list can be integers, booleans (represented by 0 or 1) or strings for enum values. Finally I should mention that this change is not the right approach. Instead of going straight to ALSA we should be using the mediaserver instead. But mediaserver isn't ready in time due to interactions with the system server, and there isn't time to fix this for the current release. We need to fix that for the next one. Bug: 17674304 Change-Id: Ic391ade61c941d0a24f4d64fe005ac9375a23fa9
* Adds the ability to start a user in backgroundAlexandra Gherghina2014-09-291-1/+17
| | | | | Bug: 15900074 Change-Id: I03b278f8e7a4618ea56a5f1935cfba34beb45981
* bootanimation: allow animation to specify background colorJesse Hall2014-09-252-3/+43
| | | | | | | | | | | | Some OEMs want to have a bootanimation (or parts of it) displayed on a color other than black. They currently just use full-screen frames for that, which wastes lots of memory and bandwidth. This change allows each part of the animation to specify a background color that will be applied outside of the frame images; if unspecified the background will be black as it is now. Bug: 16635599 Change-Id: Ibf008fc75c5aad891c86ba9e4ec0879b7a61b8bd
* Allow null queues to be set in MediaSessionRoboErik2014-09-241-1/+2
| | | | | | | Also add some test code for it to OneMedia. bug:17593962 Change-Id: I074e2bb0329d9a97f623e4309bb7dada157b8324
* Merge "Make dpm command output more test friendly" into lmp-devEsteban Talavera2014-09-181-3/+3
|\
| * Make dpm command output more test friendlyEsteban Talavera2014-09-181-3/+3
| | | | | | | | | | | | | | | | | | | | Added 'Success' at the beginning of the command output every time it didn't fail, so that we can easily check the output in tests. The command is brand new, only used by us on CTS tests, so this shouldn't break anybody. Bug: 17312478 Change-Id: Ie67bf5b2f44e658e7009e5bd87f8cb81be515584
* | Merge "Fix issue #17536024: The am start's wait option doesn't..." into lmp-devDianne Hackborn2014-09-171-0/+4
|\ \ | |/ |/|
| * Fix issue #17536024: The am start's wait option doesn't...Dianne Hackborn2014-09-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...give time in some cases This switch to multiple stacks broke the check to determine if it should actually wait for a new activity to be shown. The new check now also requires that the top activity be resumed, which means we may get some false positives where we decide to wait and shouldn't, but that is better than consistently not deciding to wait in some cases when we should. (And we will always finish waiting then next time something becomes visible). Also add another time, which is how long it took from the startActivity call to return with the result. And fix when we decide to report that we are done so that, in the case where we are bringing an existing activity to the foreground, we don't wait until its animation is complete. Change-Id: Id38ca0070f04e7bf8c73e131fb055808553a0e2f
* | Add 'adb dpm' subcommand to set profile ownerEsteban Talavera2014-09-162-14/+51
|/ | | | | | | | | Required for GTS tests. Needed to relax the restriction that only root user can run 'pm create-user' as GTS tests can't get root permissions. Bug: 17312478 Change-Id: I1841286ddf51756c73018c087a5f29afeb5b9f15
* Merge "Whoops, wait around for pm result." into lmp-devJeff Sharkey2014-09-151-1/+5
|\
| * Whoops, wait around for pm result.Jeff Sharkey2014-09-151-1/+5
| | | | | | | | | | | | | | | | poll() returns immediately; we want to take() to wait for the result to actually arrive. Bug: 17510699 Change-Id: I87669e79e9941480fed33e4cc8a38de793d59e90
* | Set device admin on dpm set-device-owner commandEsteban Talavera2014-09-151-9/+26
|/ | | | | Bug: 17312478 Change-Id: I4ef730a97d603352eda77f04a2b00fa97c2be662
* Merge "Bring install and install-multiple into parity." into lmp-devJeff Sharkey2014-09-121-16/+22
|\
| * Bring install and install-multiple into parity.Jeff Sharkey2014-09-111-16/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This ensures that both are using (almost) identical logic when deciding what installs to proceed with. Installs from "pm" for all users now run as OWNER, and rely solely on INSTALL_ALL_USERS to express intent. This keeps install session notifications simple. Since installer UID can vary from installer package name, start persisting the UID. Also parse some missing flags for install sessions. Bug: 17469392 Change-Id: I6d89b1a787aa2024cc4bebf6b9c29317c358e147
* | Merge "Add new adb dpm (= DevicePolicyManager) command" into lmp-devEsteban Talavera2014-09-125-0/+288
|\ \
| * | Add new adb dpm (= DevicePolicyManager) commandEsteban Talavera2014-09-125-0/+288
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds new adb command to execute DevicePolicyManager tasks. First subcommand allows us to set a device owner on a provisioned device (provided no accounts are associated with the device). This is required as GTS tests run on provisioned devices. We plan to add more subcomands required for new GTS tests, such as the ability to create a managed profile. Bug: 17312478, 17316711 Change-Id: I2613178ea82a6c6268e7f8012e74c4a852fea0d4
* | | Merge "Clean entire arg block when setting process name." into lmp-devJeff Brown2014-09-111-9/+20
|\ \ \ | |_|/ |/| |
| * | Clean entire arg block when setting process name.Jeff Brown2014-09-111-9/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Android processes fork from Zygote, we rewrite the command line with a new name, eg. "system_server". When we do this, we should fill the entire block with zeros to remove corrupted argument information that may otherwise remain in the /proc/<pid>/cmdline buffer and be seen in tools and stack dumps. Fixed an issue where VM options could be overwritten after setting the nice name if the name was too long. Bug: 17474152 Change-Id: Ie6cf9ed7752a04300a340e26cd6812bb35c59e1b
* | | Merge "Apply cross-user restrictions to Shell" into lmp-devAmith Yamasani2014-09-111-1/+1
|\ \ \ | |_|/ |/| |
| * | Apply cross-user restrictions to ShellAmith Yamasani2014-09-101-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Even though Shell user is allowed to perform cross-user actions, lock that path down if the target user has restrictions imposed by the profile owner device admin that prevents access via adb. If the profile owner has imposed DISALLOW_DEBUGGING_FEATURES, don't allow the shell user to make the following types of calls: start activities, make service calls, access content providers, send broadcasts, block/unblock packages, clear user data, etc. Bug: 15086577 Change-Id: I9669fc165953076f786ed51cbc17d20d6fa995c3
* | Output recent configs in am get-config commandAdam Lesinski2014-09-101-0/+77
|/ | | | Change-Id: Ic516e73d2e72ac0dc3136f7226cedd851fe22b85
* Clean up apks installed for a removed userAmith Yamasani2014-08-291-2/+10
| | | | | | | | | | | | | | When a user is removed, enumerate through all installed packages to see if any of them are not installed for any user. Delete the package if no user has it "installed". Added a pm option to install an apk for a specific user. Fixed a crash in UserManagerService when executing the above cleanup - dying users generate a null UserInfo. Bug: 15426024 Change-Id: I571decde1ae1c257d0da6db153b896aad6d6bcb4
* Change /dalvik-cache to be owned by root.Alex Light2014-08-281-3/+3
| | | | | | | | Bug: 16875245 (cherry picked from commit 79bf4007f559e194205f632b23d2bfb6f8d1e7ba) Change-Id: I29a70215a2207bc4e0db02ab751d32a68edf4b66
* Add sample profiling option to am.Jeff Hao2014-08-261-10/+23
| | | | | | | Also bundles all profiling options into a class. Bug: 17040932 Change-Id: I85d675ee1494bdc7308caffdf94145d27c996e9d
* Installing splits into ASECs!Jeff Sharkey2014-08-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Sessions can now zero-copy data directly into pre-allocated ASEC containers. Then at commit time, we compute the total size of the final app, including any inherited APKs and unpacked libraries, and resize the container in one step. This supports both brand new ASEC installs and inheriting from existing ASEC installs. To keep things simple, it currently requires copying any inherited ASEC contents, but this could be optimized in the future. Expose new vold resize command, and allow read-write mounting of ASEC containers. Move native library extraction into the installer flow, since it needs to happen before ASEC is sealed. Move multiArch flag into NativeLibraryHelper, instead of making everyone pass it around. Migrate size calculation to shared location. Separate "other" package name in public API, provide a path to a storage device when relevant, and add more docs. Bug: 16514385 Change-Id: I06c6ce588d312ee7e64cce02733895d640b88456
* Add Shell command to set AppOps permissionsAdam Lesinski2014-08-195-0/+348
| | | | Change-Id: I6446543b27f0d2d2e69590a2807e713c6d5ccbbc
* Merge "PackageInstaller API refactoring." into lmp-devJeff Sharkey2014-08-151-95/+66
|\
| * PackageInstaller API refactoring.Jeff Sharkey2014-08-151-95/+66
| | | | | | | | | | | | | | | | Switch to using IntentSender for results to give installers easier lifecycle management. Move param and info objects to inner classes. Bug: 17008440 Change-Id: I944cfc580325ccc07acf22e0c681a5542d6abc43
* | Fix crash in legacy apps that register without a looperRoboErik2014-08-141-1/+9
|/ | | | | | | | | Some legacy apps registered their media button receiver in a thread without a looper. If this happens we need to use the main looper to prevent a crash. bug: 16306226 Change-Id: Idf472e649393e2a7ce2a3e1cbb3476003ab17f34
* Merge "Add an onSessionDestroyed callback to MediaController.Callback" into ↵RoboErik2014-08-141-0/+7
|\ | | | | | | lmp-dev
| * Add an onSessionDestroyed callback to MediaController.CallbackRoboErik2014-08-131-0/+7
| | | | | | | | | | | | | | | | Callbacks on the controller need to know when the session ceases to exist. bug:17009030 Change-Id: I0f1c1cfc51f7dd2203955287cc269667d3765ee4
* | Persist the cpuAbiOverride setting.Narayan Kamath2014-08-131-0/+4
|/ | | | | | | | | | If an app is installed with an ABI override (adb install -r --abi) we should remember this so that we don't revert to the scan derived ABI on the next reboot. bug: 16476618 Change-Id: I6085bc0099eb613dd9d3b07113c7c13859780697