It was possible for apps to put toast type windows
that overlay other apps which toast winodws aren't
removed after a timeout like toasts are.
Now to add a toast window one needs to have a special
token. The token is added by the notificatoion manager
service only for the lifetime of the shown toast and
is then removed including all windows associated with
this token.
This prevents apps to add arbitrary toast windows. The
token is passed in the app domain in the request to
construt and add the toast window which allows a bad
app to add arbitrary toast windows. However, this is
fine since the token will be invalided and all of its
windows removed after the toast for which it was
create times out.
We do not care of braking apps that add toast windows
directly due to the security and privacy implications
of arbitrary UI redressing. Also we have dedicated
Toast APIs which are the way to add this time of UI.
bug:30150688
Change-Id: I65372c81a791489de89fb2886cc96392c28680bb
Makes sure that the size of the stack trace does not exceed
40 KiBi, to ensure that even errors with large stack traces
are properly reported to ActivityManagerService. For good
measure, also ensure that the exception message is not too
long either.
Change-Id: Id8a99094023c15a981b1b79fd9ee0d803921e220
Fixes: 29918978
It currently causes lock contention during user switch, when instance of
WallpaperManager in SystemUI is accessed from multiple threads
Bug: 29039588
Change-Id: I4b827d54d10fbd3b188fb94f47e78a2967ecb480
Added a bit more information in the javadocs about the new constant
ENCRYPTION_STATUS_ACTIVE_PER_USER in related methods/constants so
that developers don't miss checking for that constant when targeting
API Level 24.
Change-Id: Id9cd6248637fe0fc28d5161344abe02614b5f502
Fixes: 30073719
Originally the code used IIntentSender, but I had to switch to calling
startActivitiesInPackage() directly, because sendIntentSender() does
not support returning errors.
Bug 30035853
Change-Id: I5d7669c96a2f1805373c71aebf45b97ac1d01ff6
Currently for OobConfig app we used DEVICE_PROVISIONED Global setting to
verify if device was provisioned. This setting can be modified using
adb. we just need to know if it was set atleast once. Added an api in
DPM to return whether system property "ro.device_owner" was set.
Bug: 29935702
Change-Id: I9a2b5217c0bc2cc11d68282e05a5450ea3f6cf21
Add a new mode, controlled by sys.use_fifo_ui property, that enables the
top app's UI and RenderThread to be SCHED_FIFO. This eliminates almost
all jank due to scheduling competition with non-UI critical
threads. This mode may not be suitable for all devices.
bug 24503801
Change-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00
- Allow wallpaper info to be queried by user
- Refactor ScrimController for extensibility
Bug: 28936996
Change-Id: Ib019331a844110f1f24f35d225d2648626545233
Refactor slightly to forbid using myUserId in the zygote (uid == 0).
Also factor Environment to put user data (vs shared data) into its
own class, which should keep the page the shared data is on actually
shared between processes.
Bug: 29338430
Change-Id: I05d1306b57658a83299e38076171f56cb364ea80