Commit Graph

17382 Commits

Author SHA1 Message Date
Julia Reynolds
229684b01a Address api feedback
Test: make
Fixes: 150008110
Change-Id: I5163cd49b11444e856cd9bd8ae2fd634da5f6a39
2020-02-23 20:44:26 -05:00
TreeHugger Robot
d566d02ff3 Merge "Rename full and reduced scale configs" 2020-02-21 23:28:35 +00:00
Evan Severson
2aa3230ca0 Merge "Add method to give a permission revoke a reason" 2020-02-21 23:16:09 +00:00
Ashwini Oruganti
b06c32f68a Merge "Resolve conflicting values of usesCleartextTraffic for shared processes" 2020-02-21 23:07:41 +00:00
Winson Chung
c4d8bcad86 Merge "Ensure task description icon resources are loaded from the right package" 2020-02-21 22:59:44 +00:00
Kevin Chyn
df244da79a Merge changes from topic "biometric-and-credential"
* changes:
  Always start AuthController
  Clean up biometric system server
2020-02-21 21:37:14 +00:00
Tim Murray
8a9c5795e0 Merge "Cache package and permission information" 2020-02-21 20:22:19 +00:00
Automerger Merge Worker
b1b13b1b3f Merge "Revert "Cache binder calls in CompatChanges"" am: e879968fbf am: 1da820d954 am: 0ea7868a9d
Change-Id: I93eb6fca846b8a56b145ddd62fa7a2f86256884a
2020-02-21 20:11:25 +00:00
Automerger Merge Worker
0ea7868a9d Merge "Revert "Cache binder calls in CompatChanges"" am: e879968fbf am: 1da820d954
Change-Id: I3bc8bea4eb5dcc7fbda8a3372083e04337e95242
2020-02-21 19:45:41 +00:00
Automerger Merge Worker
1da820d954 Merge "Revert "Cache binder calls in CompatChanges"" am: e879968fbf
Change-Id: I2fd44d5f95c66d57c8cf779a8b18a10b4e2e965c
2020-02-21 19:25:51 +00:00
Ashwini Oruganti
9330d5e32b Resolve conflicting values of usesCleartextTraffic for shared processes
Bug: 148240416
Test: Manually tested by installing two apps running in a shared process
and starting their shared process activities in various orders. The
value of usesCleartextTraffic gets set as expected.
Change-Id: Ib350c09c42d5524734fb259a2ab787790f2d8e30
2020-02-21 09:52:58 -08:00
Peter Kalauskas
4dc04606da Rename full and reduced scale configs
Rename:
  config_fullTaskSnapshotScale -> config_highResTaskSnapshotScale
  config_reducedTaskSnapshotScale -> config_lowResTaskSnapshotScale

Both full and reduced scale can be "reduced" from 100%, so name them
more clearly.

Test: TaskSnapshotCacheTest
Test: TaskSnapshotControllerTest
Test: TaskSnapshotPersisterLoaderTest
Test: TaskSnapshotSurfaceTest
Bug: 148617404
Bug: 142063079
Change-Id: Ie8073d5a3048c19450308b2af22d363deaa51b6a
2020-02-21 17:06:19 +00:00
Anna Trostanetski
9c6ecc90c5 Revert "Cache binder calls in CompatChanges"
Reason for revert: cache needs to be cleared on package install.
This is much simpler to do in internal master with recent changes
(ag/10172190) so I'm reverting the cache from aosp to keep it correct,
and cherrypicking this into internal master.

Change-Id: I71757a5b60fbdba3c69322b95a20527a1e3a66e9
2020-02-21 16:38:32 +00:00
Andrii Kulian
02c0e4d2ac Handle config/display changes for WindowContext
Introduce IWindowToken to report config/display changes from
server side. When config change callback is received,
it will update the resources associated with the window token.

Test: WindowContextTests
Bug: 128338354
Bug: 146820733

Change-Id: I871bd78a21dbde1286786e65c340b6259b873660
2020-02-21 16:07:32 +08:00
Julius D'souza
e32f290e3e Merge "KeyguardManager set + validate lock API refinement" 2020-02-21 03:19:43 +00:00
Rubin Xu
cb40b9881d Merge "Support security logging on org-owned managed profile devices" 2020-02-21 00:00:03 +00:00
Julius D'souza
ab5461c0da KeyguardManager set + validate lock API refinement
KeyguardManager#validateLockPasswordComplexity
-> KeyguardManager#isValidLockPasswordComplexity

parameter changes: boolean isPin -> int locktype

Bug: 149298492
Test: TreeHugger
Change-Id: Icc1ab6c3a0eb4637d7e6fb34f95b8a72ced50f98
Signed-off-by: Julius D'souza <jdsouza@google.com>
2020-02-20 15:52:11 -08:00
Haining Chen
6c839dd1c6 Merge "Implementations of biometric contraints for weak and convenience tiers (1) 24 hours fallback (2) 4 hours idle timeout" 2020-02-20 21:05:24 +00:00
Kevin Chyn
7d07c89235 Clean up biometric system server
1) BiometricService / AuthService always need to be started, since on
   Android 11 and later, the public credential auth API comes through this
   path.

2) Consolidate getAuthenticatorId() and expose via AuthService. This is
   used only by the platform during key generation. Instead of asking
   each individual service, AuthService will return a list of IDs for
   sensors which are enrolled and meet the required strength.

Test: atest com.android.server.biometrics
Test: fingerprint device, CtsVerifier biometric section
Test: face unlock device, CtsVerifier biometric section
Test: remove biometrics from device, CtsVerifier biometric section

Bug: 148419762
Bug: 149795050

Change-Id: I2c5385b1cd4f343fabb0010e1fe6fb1ea8283391
2020-02-20 11:12:51 -08:00
Daniel Colascione
a46b7b3f5e Cache package and permission information
We use the package settings class as a central point for invalidating
on package information changes; for permission changes, we invalidate
from inside the individual permission data objects.

Bug: 140788621
Test: boots, package tests (pending)
Change-Id: Iec14d4ec872124e7ef4612c72d94c89a7319ace0
2020-02-20 09:24:32 -08:00
Soonil Nagarkar
a6149521d3 Merge "Revert requestSetProviderEnabled API" 2020-02-20 16:34:37 +00:00
Rubin Xu
1480ce7b87 Support security logging on org-owned managed profile devices
When security logging is enabled on org-owned profile devices,
Security events will be redacted to preserve privacy on the personal
profile as follows:

* TAG_ADB_SHELL_CMD
  Shell command will be redacted.

* TAG_MEDIA_MOUNT
* TAG_MEDIA_UNMOUNT
  The media's volume name will be redacted.

* TAG_APP_PROCESS_START
* TAG_CERT_AUTHORITY_INSTALLED
* TAG_CERT_AUTHORITY_REMOVED
* TAG_KEY_GENERATED
* TAG_KEY_IMPORT
* TAG_KEY_DESTRUCTION
* TAG_KEY_INTEGRITY_VIOLATION
  Only events happening inside the managed profile will be returned
  to the admin.

Bug: 148437300
Test: atest FrameworksServicesTests:DevicePolicyManagerTest
Test: atest FrameworksServicesTests:SecurityEventTest
Test: atest FrameworksCoreTests:EventLogTest
Test: atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testSecurityLoggingWithSingleUser
Test: atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testSecurityLoggingWithTwoUsers
Test: atest com.android.cts.devicepolicy.MixedDeviceOwnerTest#testSecurityLoggingEnabledLogged
Test: atest com.android.cts.devicepolicy.OrgOwnedProfileOwnerTest#testSecurityLogging

Change-Id: I2e52229a3163b3e0dc3d80d71700023394d84587
2020-02-20 15:47:29 +00:00
Charles Chen
c56ce6fd08 Merge "Exempt-From-Owner-Approval: Report non-visual Context misuse" 2020-02-20 12:30:06 +00:00
TreeHugger Robot
1ef019d3e0 Merge "Disable Settings toggle if admin has set always-on VPN" 2020-02-20 10:09:34 +00:00
Andrii Kulian
5877c7d6c0 Exempt-From-Owner-Approval: Report non-visual Context misuse
Make obtaining a visual service from non-visual Context instance
report a strict mode violation and print the stacktrace.

Make calling getDisplay() throw an exception if called on an instance
that is not associated with a display. For existing usages introduce
a new internal method that does not perform the verification until
the usages are properly fixed.

Bug: 128338354
Test: StrictModeTest#testIncorrectContextUse_GetSystemService
Test: StrictModeTest#testIncorrectContextUse_GetDisplay
Change-Id: Id25d590eca6e10066e55d7ed6436d3bc9e433beb
2020-02-20 01:29:25 +00:00
Haining Chen
c06c481fcb Implementations of biometric contraints for weak and convenience tiers
(1) 24 hours fallback
(2) 4 hours idle timeout

Bug: 141025588

Test: atest AuthServiceTest
Test: atest KeyguardUpdateMonitorTest
Test: atest BiometricsUnlockControllerTest
Test: atest KeyguardIndicationControllerTest
Test: make -j
Change-Id: I1078ce39a2ae1e4c250b6468e477b703e3016e2c
2020-02-19 23:58:31 +00:00
Winson Chung
d6722037ba Ensure task description icon resources are loaded from the right package
- We previously assumed that icons set in the task description would be
  loaded from the same package as the root activity (which is incorrect),
  instead, they should be fetched from the activity which set them.

  We also deprecate getIcon() because:
  - apps could only get the icons they set previously (not very useful)
  - it didn't return resource icons, only in memory or loaded from disk
  - the name doesn't indicate that it could result in a disk load
  Instead, callers (namely SysUI) should now call loadIcon() to get the
  actual icon directly (or loaded if necessary).

Bug: 143363444
Test: atest TaskDescriptionTest
Test: atest ActivityManagerTest
Change-Id: I48aaba17de2edf0b3a61fa049cf897020d4c2ef1
2020-02-19 15:49:00 -08:00
Automerger Merge Worker
cc5a5939a0 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3 am: 2cef69cb5f am: a2c3c9fe10
Change-Id: I6d7ba01f4083ed01eea0ec0dda0b69f27a4b1346
2020-02-19 23:19:40 +00:00
Soonil Nagarkar
3819f972df Revert requestSetProviderEnabled API
Bug: 144955780
Test: presubmits
Change-Id: Iec8520acfd98b9d9d92a4876ebfa899ac2a0731e
2020-02-19 14:39:58 -08:00
Evan Severson
43b2a199ab Add method to give a permission revoke a reason
Test: Compile
Bug: 149861310
Change-Id: I865a300a9795550a2549f928f4e967b2b695439e
2020-02-19 14:23:56 -08:00
Leon Scroggins
658cd3ccff Merge "Switch to SharedElementCallback to HardwareBuffer" 2020-02-19 20:50:21 +00:00
Leon Scroggins III
25118818b6 Switch to SharedElementCallback to HardwareBuffer
Bug: 148155907
Bug: 135299581
Test: Covered by CTS

We plan to remove Bitmap#createGraphicBufferHandle. Call the new
Bitmap#getHardwareBuffer instead.

Change-Id: I0b3ada9636fcc00df82472ea9479eb0bfbcda9eb
2020-02-19 20:48:21 +00:00
Makoto Onuki
f8bbba1477 Merge "Add WTF when a system server wrapper can't be found" 2020-02-19 20:45:18 +00:00
Automerger Merge Worker
a2c3c9fe10 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3 am: 2cef69cb5f
Change-Id: I6146cfbbd0a8214e476e50b359ce5474e6d5070c
2020-02-19 20:12:07 +00:00
Ricardo Correa
f72bb3fe6d Merge "Include an AppOp to allow dialer role app to record and play audio into calls" 2020-02-19 19:56:56 +00:00
Automerger Merge Worker
2cef69cb5f Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3
Change-Id: I5645d6c8f666e2e29e753cad5f216f9d7ab335d2
2020-02-19 19:52:57 +00:00
Calin Juravle
1ee3e70cf3 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" 2020-02-19 19:38:35 +00:00
Calin Juravle
c78162f489 Revert "Revert "[DexLoadReporter] Report classloader contexts di..."
Original commit:
[DexLoadReporter] Report classloader contexts directly from classloader

At the moment classloader contexts are incorrectly computed in the
PackageManager for secondary dex files. There are two issues:

(1) The wrong computed classLoaderContext will be reported for a secondary
    dex file if it was loaded at the same time as a primary dex file
    - This is due to the continue statement that doesn't increment
      dexPathIndex
(2) If a secondary dex file was loaded with a shared library then that
    shared library info isn't passed through the dex load reporting
    infrastructure, and thus its classloader context is incorrectly computed
    in PackageManager.

In order to fix the issues described above & prevent further classloader
context computation divergences between the package manager and the
runtime, lets compute the classloader context in the runtime at dex load
time and report the expected classloader context directly to
DexLoadReporter (and thus the package manager).

Notes: This is mostly just a refactor (i.e. there are a lot of line
changes, but functionally speaking this set of CLs doesn't do much
except change where the classloader context is computed)

Addendum: The bugs described above could also be fixed by:
- changing DexLoadReporter to report information about shared libraries that
  the reported classloaders depend on to PackageManager
- Teach DexoptUtils.processContextForDexLoad about shared libraries
- Fix dexPathIndex calculation in DexManager

I opted for this set of changes instead because this reduces the
possibility of context computation divergence between the framework and the
runtime. Additionally it feels more "solid" that the classloader context
is now computed directly when a dex file is loaded, rather than the
context recreated later on in the PackageManager.

Test: atest com.android.server.pm.dex.DexManagerTests
Test: atest com.android.server.pm.PackageManagerServiceTest
Test: Install app depending on shared library & uses secondary dex
files; adb shell pm bg-dexopt-job; launch app and see odex file
successfully loaded (from smaps/no logcat errors)

Bug: 148494302
Exempt-From-Owner-Approval: This is a pure re-revert, previously owner approved.
Reason for revert: Re-land
Reverted Changes:
I295a6e99e:Revert "Fix shared libraries not being reported vi...
Ib58066e8f:Revert "[DexLoadReporter] Report classloader conte...

Change-Id: I8d1af791f93a3f8fa6eca78df50891cd2ebbb4a3
2020-02-19 19:37:05 +00:00
Pavel Grafov
fba650eaed Merge "Add "Forgot my password" to start profile in locked state." 2020-02-19 19:09:20 +00:00
Alex Johnston
5263c11a4c Merge "Add permission to ACTION_RESET_PROTECTION_POLICY_CHANGED" 2020-02-19 18:54:35 +00:00
Evan Rosky
2d88183bde Merge "SystemUI Split via TaskOrganizer" 2020-02-19 18:43:36 +00:00
Dan Stoza
a6781c835d Merge "Add PowerManager#getThermalHeadroom" 2020-02-19 18:18:31 +00:00
Pavel Grafov
4513e24323 Add "Forgot my password" to start profile in locked state.
Feature is disabled on non-FBE devices since the profile user will
end up in RUNNING_UNLOCKED state.

Bug: 143516540
Test: atest com.android.server.devicepolicy.DevicePolicyManagerTest
Test: manual
Change-Id: Ib87492577b4e5153a8108036af89c547e4bb76ee
2020-02-19 12:44:12 +00:00
Julia Reynolds
042ebb1dc8 Merge changes from topics "jr-all-convo", "jr-default-vic"
* changes:
  Optionally make VICs bubble
  Add method to retrieve all conversations
2020-02-19 12:24:56 +00:00
Rubin Xu
2108f19b49 Disable Settings toggle if admin has set always-on VPN
If the admin has turned on always-on VPN, do not allow the user
to modify it. In order to distinguish between a user-initiated
always-on request and an admin-initiated one, DevicePolicyManager
needs to track what the admin has set, and provide getter to be
consumed by Settings code.

Bug: 137938969
Test: manually set always-on VPN and check Settings is disabled
Change-Id: Ief7454a2b66c487c23d06c2b4486a7107f8a385a
2020-02-19 10:11:23 +00:00
Taras Antoshchuk
b073a3eb54 Merge changes from topic "dynamic-mime-types"
* changes:
  Clear preferred activities affected by MIME groups changes
  Implement new API to modify MIME groups by adding/removing MIME types
  Add mimeGroup tag to intent filters
2020-02-19 07:09:22 +00:00
Ricardo Correa
e96b5668b3 Include an AppOp to allow dialer role app to record and play audio into calls
This change includes an AppOp that will be used to grant access to telephony call audio (RX and TX) to the default dialer application (assigned to the Dialer role).
A new permission was created so only apps that also require this permission will be granted. It will also be used to keep track of usage (audit).

Test: Compilation and manual verification
Bug: 135197853

Change-Id: I5d042f667ca5fe64f8048b8aff7b98f51b3c1500
2020-02-18 22:54:13 -08:00
Automerger Merge Worker
a165f5dc26 Merge changes from topic "add-caching-platformcompat" am: 8f269473b2 am: 61e6c86f54 am: 309680b57a
Change-Id: I9aa476dc8038fc5ae18fafbd317e991e16067012
2020-02-19 05:56:25 +00:00
Dan Stoza
b04705837a Add PowerManager#getThermalHeadroom
Adds getThermalHeadroom, which allows users to determine how close the
device currently is to SEVERE thermal throttling. For intensive
applications which can scale their workloads, this allows them to help
manage the thermal envelope of the device.

Test: Manual, modify Filament test app to call and observe values
Test: PowerManagerTest#testGetThermalHeadroom
Test: atest android.os.cts.PowerManager_ThermalTest
Test: atest com.android.systemui.statusbar.phone.StatusBarTest
Test: atest CachedDeviceStateServiceTest
Test: atest AbstractAccessibilityServiceConnectionTest
Test: atest KeyEventDispatcherTest
Test: atest AttentionManagerServiceTest
Test: atest HdmiControlServiceTest
Test: atest ThermalManagerServiceTest
Test: atest RecoverySystemServiceTest
Bug: 136285293
Change-Id: I26e1c849c4b08cbf7ee0057f555cf0893750da43
2020-02-18 17:29:26 -08:00
Automerger Merge Worker
893bf3b7f5 Merge "Improve BaseBundle#kindofEquals" am: 42ab50d14b am: 1f82fbb4ac
Change-Id: I0dadb4269692a86cab1c66e1c69d9a95bfddd9a2
2020-02-19 00:53:38 +00:00