History files that were edited after creation (like if a package
was uninstalled) weren't being deleted in a timely manner
Test: atest, manual on device with old files (launch history;
they are gone)
Fixes: 150479791
Change-Id: I0ddc22e988a80a8f1df01dfd2162d9d23e4ace7e
This both avoids the need to make extra copied for the models and
allows exceeding the parcel size limits.
Bug: 150100907
Test: Manual testing of basic sound trigger functionality
Change-Id: Ic4c5c1a9de3e29b1b6fa82442254e1afe7daec19
In order to avoid marking a manual reboot as a RoR failure, add another
indicator that the resume-on-reboot was armed before the last reboot.
(cherry picked from commit 5e6a959653)
Test: atest RebootEscrowManagerTests
Bug: 149833390
Change-Id: Ief1cac1952302e43a2c57314bc1449fa7bf38ba7
Merged-In: Ief1cac1952302e43a2c57314bc1449fa7bf38ba7
The database storage commands are part of ILockSettings, but the actual
storage takes place on LockSettingsStorage. Redirect the calls in
LockSettingsService to LockSettingsStorage to make the ownership a bit
more clear.
(cherry picked from commit 366c310e4a)
Bug: 149833390
Test: atest LockSettingsStorageTests LockSettingsServiceTests
Change-Id: Ibc9236a171cedd3b09b1afed70895bc91e895a1c
Merged-In: Ibc9236a171cedd3b09b1afed70895bc91e895a1c
If IME is already visible, requestShow() is immediate.
If animation is finishing and IME is hiding, notify IME process of the
visibility.
Bug: 111084606
Test: Use test app [1] and verify that swiping up and down multiple
times opens and closes the IME respectively.
[1] I4320871bdc8184fac38921616e1a1322f8dbc804
Change-Id: Icf202b56c0bc3833e86ee70c43fedd418e27b140
- Show a toast to indicate screenshot is taken.
BUG:149525300
Test: Flash and press bug report shortcut and check the toast
Change-Id: Ib210c8855d2b588b51f883e32070c8b748ea4e3f
Merged-In: Ib210c8855d2b588b51f883e32070c8b748ea4e3f
PackageImpl on the server side contains fields that are system server
specific, such as what partition the package was found on. These
fields are hidden from the core side, since they're irrelevant
for APKs that are not processed by PackageManagerService.
To mirror this, only the server side PackageInfoUtils sets the
flags related to theses server-side fields.
So when a PackageSetting is created, this server-side
PackageInfoUtils must be called, not the core side
PackageInfoWithoutStateUtils, with a null PackageSetting,
to set the related pkg(Private)Flags.
Bug: 150083410
Test: atest android.cts.backup.OtherSoundsSettingsHostSideTest
Test: atest com.android.server.pm.parsing
Change-Id: Ife39c83e243daf5d3583f04fce1c0f87c0e20585
As WindowState#startAnimation for restricting window animation duration
(currently is 10 secs),
For security reason, we also need to restrict app transition animation
duration as 3 secs to prevent malicious app may set a long duration or
infinity repeat counts through ActivityOption#makeCustomAnimation or
Activity#overridePendingTransition with custom animation set.
Bug: 145728687
Test: manual as issue provided test app
Change-Id: I39051d6e4d2b681ce2becbafe14aab3f3d8ebf6b
When calling to SurfaceFlinger to set the display config spec, the
default configId needs to consider the config group of the config.
Bug: 149784270
Test: Simulate multiple config with debug change ag/10355181
Change-Id: I50dce6e31e8cc842a221baaa69e128428f67be99
- Make all time based snoozing use the same time frame
(current millis, not elapsed walltime)
- Add synchronization to snoozing
- Update when entries are and are not removed from data structures
to avoid NPEs
Test: atest, and manual, repeated snooze and unsnooze
Fixes: 150377159
Change-Id: Ic91ff7ac0bd1b3635b35267bdbc64d3ee614c8ab
- And allow them to be unsnoozed with a tap.
- Also use the conversation's shortcut icon and name if available.
- And ignore the setting to turn off the strips since it now requires
explicit user action to make the strip visible
Note 1: unsnoozing a notification causes it to make sound again - we
probably want to change that for manually unsnoozed things
Note 2: the entries in the header don't yet persist across a reboot
Test: atest, manual
Bug: 149486431
Change-Id: Id661c25a49bc982e39deab977eb912f51eaf6757
Root cause: AlarmManagerService send broadcast of TIMEZONE_CHANGED
before boot completed lead to IllegalStateException in AMS and system
skip StartWindowManagerService, and finally got crashed.
Modification: add flag Intent.FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT.
Change-Id: Iab9cd5acfeabd114371a8aaaa406a4a1c5919f98
Merged-In: Iab9cd5acfeabd114371a8aaaa406a4a1c5919f98
Test: Monkey
Bug: 79550062
(Cherrypick for R)
Change-Id: I802b90c55946cfac0f64cb69072588b0acb03cc2
PackageInfoWithoutStateUtils is designed for use in core when
the caller doesn't have a PackageSeting.
Because its generic generateApplicationInfo method does a simplified
checkUseInstalled check without the PackageSetting, this fails whenever
state must be taken into account.
This introduces method variants which skips the checks and defers to
PackageInfoUtils's own check.
Bug: 150328400
Test: manual verify call into PackageManager#setSystemAppState with
SYSTEM_APP_STATE_UNINSTALLED and verify
PackageManager#getApplicationInfo throws NameNotFoundException
without fix and succeeds with fix
Test: atest com.android.server.pm.parsing
Test: TODO PackageInfo(WithoutState)Utils test in follow up change
Change-Id: Ie00984c2e1b80d2a3948923dc1293fbfddf01037
Because process start is broken up into the blocking startProcessLocked
method and a handler that then later actually starts the process, we
were failing to block launch of frozen packages (being updated) that
happened to have their request to start take place just before they were
frozen.
This change leaves in place the check for frozen state in the blocking
method, but adds another to isProcStartValidLocked to ensure that a the
actual time of process start we check frozen state again. The side
effect of this is that in the case that the process is started in the
window described above, the caller will not encounter the
SecurityException, but it's more correct that we don't launch an app
while it is being actively updated.
Test: None; difficult to reproduce.
Bug: 150303575
Change-Id: Iea24c9b1c937c699f6df13f4ea742905354d664f
This change passes the uid when granting implicit access to the caller
when calling a provider.
Test: manual; provider query across user bounds
Fixes: 150062663
Change-Id: I4a84febd4f5dc2f24cb2a53a1ac3b8af50772a31
This patch adds a zygote policy parameter to functions in the
ActivityManagerService (and associated classes) to allow for different
launch behavior based on the triggering event. This will allow for
latency sensitive applications to utilize the Unspecialized App Process
Pool, without other processes draining the pool and causing excessive
refill events.
Test: Booted and launched several apps
Bug: 147613193
Change-Id: Ib0a51c8720f95a7eafcab4ad2b5bb08f27a58d8c
(cherry picked from commit 4d05188588)
InstrumentationWatchers are used in tests, therefore
we are not concerned about them misbehaving on
production devices.
Fixes: 147705910
Test: run an instrumentation test and
there are no ONEWAY_FLAG warnings from BinderProxy
Change-Id: I323d4598a4d8e5e754251d8d4f27c5c6a2faea2f
Switch QuotaController to track all of the pending in quota alarms
internally and only set one alarm for the whole group.
Bug: 150156067
Test: atest CountQuotaTrackerTest
Test: atest CtsJobSchedulerTestCases
Test: atest QuotaControllerTest
Change-Id: Ie415ed0c4f224ac8c37110962009c310e6a6a051