This checks if the phone app is currently getting or in a call when a
media key event is sent and sends it to the phone session instead of the
foreground app if it is.
bug:17527302
Change-Id: Ie5d6cf0c897da81d106f2b1a0561b79f4fc35e82
..."uid 2000 does not have android.permission.UPDATE_DEVICE_STATS"
Make sure to clear calling identity before getting into the guts
of the activity manager. Also fix the places the activity manager
calls in to battery stats to not require a permission check, anyway.
Change-Id: Ifd90937875b9fe0c36aa3f5cf1ec173746914e6b
If accessibility is enabled and a test tool based on the accessibility APIs
connects to the system we suspend the current accessibility services while
the tool is running (to avoid inteference as the tool is such a service) and
after the tool disconnects we restore the accessibility state. The issue is
that when clearing the accessibility state we were also wrongly clearing the
active window. We are now careful to not clear the active window in such a
case.
It is also possible that the active window was never initilaized before the
tool is run so now it is lazily loaded such that if we do not know which one
it is, we get the one the has input focus. The definition of an active window
is the one that has input focus or the user is touching.
bug:17663432
Change-Id: I8868866a5126c590d3bddad099ababb97978227a
The code to recover when running processes are removed from the
LRU list turned up an existing problem where we would remove a
persistent process from the LRU list, making it more obvious.
Now it is fixed.
Change-Id: I94ccb924b3e5649b2819d3392b6f6c9c725dc903
The UiAutormator tool is a part of the SDK. If it is run while
accessibility is enabled it stops all accessibility services
as it is an accessibility service itself to avoid interference
and when done restores back the accessibility state. The issue
was that the accessibility state is not restored leaving the
device in a bad state.
bug:17662770
Change-Id: I3c4f46fa05c76b874eeffdeb867ef433c3fedf2e
Uninstall for all users should check whether package
is admin for any user not just user 0.
Bug: 17657954
Change-Id: Ia116248b5889fc02dd46816a132e03c8e62662c9
In the past we wrote out badly formed ComponentNames with no
class part. Loading these results in a null pointer exception
blocking boot.
Bug: 17652534
Change-Id: Iec592343425a23c7ada5f73cf30b8646d31eae81
If all accessibility services are disabled we turn off event firing
to avoid a lot of work for nothing. The logic to do that had a flaw
and was not turning event firing off in every case it should. We were
tuning event firing if it is on and no service is enabled but it
is possible that a package on the system image is disabled so the
service is enabled just not bound. Arguably we can remove the
serivice from the enabled list but it is technically on the device.
Note that we correctly handle the case of a package being removed.
bug:17332506
Change-Id: I6d6d9cb9cc271116a3d22ed9fd8d7f533dec9a0b
Add basic filename protection, also only file names that are for
app icons so this can't be abused to access thumbnails.
Change-Id: I2831c0f3f08a39aa734f93f76b6fd4aaf97e87c6
Cleaner paths and better error reporting when a problem goes wrong
while binding an application. This gets rid of the (recently added)
error about removing a process that hasn't been killed, and cleanly
kills the process along with more detailed errors about where things
failed.
Change-Id: I710a209c14da1515929e6254396b793177eee115