If the OTA updates a system app which was previously preopted to a non-
preopted state the app might end up being verified at runtime. That's
because by default the apps are verify-profile but for preopted apps
there's no profile.
Do a hacky check to ensure that if we have no profiles (a reasonable
indication that before the OTA the app was preopted) system apps get
compiled with a non-profile filter (by default interpret-only).
Bug: 30032273
Test: Andreas "has verified that Calin's change to A/B works as expected
and promotes things like SystemUI to speed. From my side, that's
ready to be merged"
Change-Id: I7a052a8ea76cab7f649dc993237ea05534d6c4b9
(cherry picked from commit 0bd7762079)
These are no longer necessary, since WiFi manages its own details.
Bug: 30041228
Change-Id: Ia3824da43367ae74d3f3a204318cfe5470d74957
Test: Compiles
(cherry picked from commit 212b95f587)
Don't write partial requests, and don't return (or throw) early after
partially reading a response.
bug: 30143607
Change-Id: I5881fdd5e81023cd21fb4d23a471a5031987a1f1
We need to make every peniding intent that went in the notification
system to allow special handling of such intents when fired by a
notification listener. If a pending intent from a notification
is sent from a notification listener, we white-list the source app
to run in data saver mode for a short period of time. The problem is
that actions and the notificaion can have extras which bundles may
contain pending intents but the system cannot look into the bundles
as they may contain custom parcelable objects. To address this we
keep a list of all pending intents in the notification allowing
the system to access them without touching the bundle. Currently
the pending intents are written to the parcel twice, once in the
bundle and once as the explicit list. We can come up with a scheme
to optimize this but since pending itents are just a binder pointer
it is not worth the excecise.
bug:29480440
Change-Id: I7328a47017ca226117adf7054900836619f5679b
We lost the code that checks to see if the target process still
exists and aborts trying to use it if so. To reduce the race
there, we have a new explicit check of the state of the process.
Hopefully fixes some of issue #28737082.
Change-Id: I37a7a6e9767516d564168ef5e110c4adafe3fb76
...as active for idle maintenance
Nor jobs of whitelisted apps.
Now they don't.
Also remove the no longer used "active download" tracking code.
Change-Id: I553197801f6eabaf15716f3201dd65257a0d4e94
When parsing the last_install, the variable name is supposed to be
*source_build* instead of *source_version*.
Bug: 28658632
Change-Id: I1e0ed7150e04885f904b6a3efa18bd5cfe17cc96
If any /data/system_[c|d]e folders were not erased
when the user was removed (maybe due to a reboot),
make sure they're cleaned up on restart as well
as when the userId is recycled later.
Mark the users' system folders with the correct
serial number for later verification.
AccountManager shouldn't be querying accounts of
partially created/destroyed users.
Change-Id: I4313756b7464f34cd5ce4fb296d61daa50b41fcb
Fixes: 29285673
Also moves discharge coulomb data to BATTERY_DISCHARGE_DATA checkin line.
Bug:29264326
Bug:28743761
Change-Id: I78881e166c11f40b2397e04d2cab8d5200c71eea
For devices that report battery discharge via a coulomb counter,
record how much of the battery was discharged while the screen
was on/off.
Bug:28743761
Change-Id: Ie2d1708864352029ff466c1fed14fc057e19b93b
Parse the last_install and report the source build version of an ota
update.
Related CL in: ag/1121141
Bug: 28658632
Change-Id: I5e835c144aabe97fda681f60397ebf4416f7bd4f
I/O in bytes are too large and it may cause overflow. Moreover, data with
large numbers are grouped in the same bucket of the histogram. This adds
difficulty to the analysis. Changing unit of I/O to MiB so that we can
have a better data distribution.
Bug: 28658632
Change-Id: Id9913d71e62b36ce5d5d2e57676953f4dbd0c7c9
This avoids doing a ServiceManager lookup for every call through
this hot code-path.
Bug: 28946245
Change-Id: I210ce34b33e5b40a5ab4e92ddce87fc5e9964be2
UserController now pushes user state to UMS.
PM now checks user running/unlocking/unlocked state by calling
UserManagerInternal.
Bug: 28090199
Change-Id: I20e62b37f78238f28dd81f49f876732bbd3c6b34
Previous change hid this constructor. Now removing it entirely for completeness.
Issue #28296200 API Review: LocaleList
Change-Id: I43476994070b101999d338ec1f5d1a1a0a2a7658
Read time and I/O for OTA update from last_install, and report the
statistics using MetricsLogger.histogram.
Bug: 28658632
Change-Id: I7fd06a82cbabd346d6d44f81ebad08f6baf4b8d0
We allow each individual Resources object to select the best
Locale for the given APK. This allows one update to the configuration
instead of multiple updates, once the locale is chosen.
The Java locale is selected from the app context's locale.
Bug:28625993
Bug:27325465
Change-Id: I99e1e53f522e560f3b80bbd1e1c605f552dbdff0