Fixes jank issues where trimMemory gets scheduled during an
animation. trimMemory likely hits code that is not in the
page cache anymore, leading to high execution time because of page
misses. Scheduling it after the next frame has been drawn
minimizes the risk that this page miss actually causes jank.
Test: Boot, switch between a couple of apps.
Bug: 78611607
Change-Id: Ia1fc411fbe6ca07861183ae484124406681118e5
If an app cancels a notification while we are
sending a smart reply then don't dismiss the
notification.
Bug: 79120026
Test: atest NotificationEntryManagerTest
Test: atest SmartReplyControllerTest
Test: atest statusbar.NotificationListenerTest
Test: atest NotificationRemoteInputManagerTest
Change-Id: Ibbc0014ae0aeb12b58be13c041d720903251490f
Apparently comparing Spannables is dangerous because
the various Span classes do not implement .equals() in any
meaningful way, so all CharSequences must be converted to
flat Strings before being compared.
Lots of additional debug code remains, for the next time we
don't understand why an innocuous notification update
appears to be interruptive.
Test: atest com.android.server.notification.NotificationManagerServiceTest
atest com.android.server.notification.NotificationTest
Bug: 78643290
Change-Id: I1c282238687f28b5b197e28a4b878dc697049f4d
Lets shell/root get a list of pkgs that have access to any slices
within an authority.
Test: manual
Bug: 78136892
Change-Id: Id33fd458ed5ad73b30f69b3a464676428344e446
The behavior that #setChoices didn't render on mobile devices from apps
that target SDK < P went undocumented. Because this is changing in P and
above, this documentation needs to point out this behavior.
Also updated formatting and style of docs to improve interop with
kotlin.
Test: none
Bug: 79244189
Change-Id: Iabfe3b2ddcc369e5ec15f9773481468cbc48dabb
- Only report that something has changed when a uid changes between
the restricted and unrestricted states. (Adds new constant that
defines this important division point.)
- Have different settle times for different key transitions: (a)
out of the top state, (b) out of any other unrestricted state,
(c) down to a lower background state.
- But, don't apply any settle time when transitioning from top to
another unrestricted state... there is no need to.
Bug: 78480444
Test: manual
Change-Id: Ife772858009a6da5c286e285a4059aea3ad3f6c7
Should use default appComponentFactory, not the actual one from the
app because we have no code.
Test: manual
Change-Id: I982967543c4cf5c28b19b36b6d183a30052bf602
Fixes: 78883500
Test: atest CtsAutoFillServiceTestCases
Test: changed activity on autofill sample to override attachBaseContext() by
calling super.attachBaseContext(null) - the activity still crashes, but
not on attachBaseContext().
Fixes: 79707861
Change-Id: Idfaa9c596cc338ab815441138ce06ba64cd3b4d2
Some of the newer methods were not rethrowing the system server
exceptions. When not returning a default value, rethrow the
RemoteException from the system server.
Bug: 79692228
Test: atest CtsUsageStatsTestCases:UsageStatsTest
Change-Id: I7b2ae735fc97f3e1903903ed5c98ce914aeaa84a
This allows them to continue to have this capability the
same as before we locked down access to it.
Bug: 78480444
Test: manual
Change-Id: If2b0722945235eb67676ace3f54efaa71a64bcde
Fix some bugs, add the ability to monitor state changes, improve
dumpsys output to help debugging, add a new check API that allows
the caller to get the real state.
Bug: 78480444
Test: atest FrameworksServicesTests:AppOpsServiceTest
Test: atest CtsPermissionTestCases:AppOpsTest
Change-Id: I3d41be9968c1d95a1456f4052da958ea64aa068d
In the cases that the classloader is being updated on the main thread,
temporarily allows disk reads so that native paths can be checked for
directory vs. APK.
Change-Id: I89cab9c7fcb71b8eff8891db974285844affe220
Fixes: 79425683
Test: atest WebViewHostSideStartupTest
- Allow SystemUI/Launcher to determine whether the snapshot is of a
translucent activity (to reduce overdraw by skipping drawing task
background) and also the sysui visibility flags are (to determine how
to update the nav bar while animating before the app is started.
- Fixing issue where the recents animation was reporting task fillsparent
state instead of the app's fillsparent state (as we do in normal remote
animations)
Bug: 79228291
Bug: 77984778
Bug: 78659249
Test: atest FrameworksServicesTests:TaskSnapshotPersisterLoaderTest
Change-Id: I19bdf7f780e7d94014d6a115bf84fa614b1dffa0
- EXTRA_PROVISIONING_USE_MOBILE_DATA is to indicate mobile data should be used for device owner provisioning
- This constant is hidden as API for P is already frozen. The constant hardcoded by developers in a QR code or NFC payload, which should work in P regardless if the constant is hidden.
- Our team will be responsible of communicating this new extra to developers desposite it's not appearing in public javadoc
Bug: 78594515
Test: None
Change-Id: I06000cf9156ef54adc3c8fe12fdb3fa73075a859
For bundled apps, add the base directory of the app (e.g.,
/system/app/Foo/) to the permitted paths so that it can load libraries
embedded in module apks under the directory. For now, GmsCore is relying
on this, but this isn't specific to the app. Also note that, we don't
need to do this for unbundled apps as entire /data is already set to
the permitted paths for them.
Bug: 79211269
Test: m -j
Test: permitted paths of PrebuiltGmsCore contains
/system/priv-app/PrebuiltGmsCorePix
Change-Id: Id9a874fcec8479e952ab94cf33b2537f9aacd691
Added a minimum time limit for App Time Limit Observers and a maximum
number of observers an app can register to AppTimeLimitController
Also fix small bug with mDpmInternal initialization
Change-Id: I8c0861d79711149f3ecd92ba4660f7b207e9b921
Fixes: 78890515
Fixes: 79230583
Test: atest AppTimeLimitController
Test: atest cts/hostsidetests/devicepolicy/src/com/android/cts/devicepolicy/ProfileOwnerTest.java#testAppUsageObserver
If local activity relaunch is executed immediately, and if
recreate() was called from a lifecycle callback, then existing
instance of activity will be destroyed while ActivityThread may
continue using it to finish performing a transaction item.
To remove this double lifecycle loop we now schedule local activity
relaunch on client thread instead of executing it immediately.
It worked in similar way until changes in b/30060825.
Bug: 78576150
Bug: 64610483
Bug: 30060825
Test: ActivityLifecycleTests
Change-Id: Ic0cef229f2f9df0fa40066d8540c4b29da7bdc58