Commit Graph

102214 Commits

Author SHA1 Message Date
Julius D'souza
e32f290e3e Merge "KeyguardManager set + validate lock API refinement" 2020-02-21 03:19:43 +00:00
Joshua Duong
10d71243b2 Merge changes from topic "adbwifi-aosp"
* changes:
  Add Settings.Global.ADB_WIFI_ENABLED.
  [adbwifi] SysUI: Add WifiDebuggingActivity.
2020-02-21 02:22:08 +00:00
Joshua Duong
2076c04333 Add Settings.Global.ADB_WIFI_ENABLED.
ADB_ENABLED historically meant the state for USB debugging. Since
wireless debugging can be enabled separately, define another setting
for it.

BUG: b/111434128

Test: make
Exempt-From-Owner-Approval: approved in aosp_master
Change-Id: If3abca8e77381d6832f55d55a43c52ee1a1267d1
2020-02-21 02:21:08 +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
Iavor-Valentin Iftime
4eb7c72945 Merge "Address API council suggestions for UserManager APIs" 2020-02-20 20:35:44 +00:00
PETER LIANG
cd94c1871e Merge "Revise the parameter of public API for allow rich content." 2020-02-20 20:30:45 +00:00
Danning Chen
876a4ab9c0 Merge "Adds ShortcutChangeCallback in LauncherApps - Service side" 2020-02-20 20:28:08 +00:00
Mehdi Alizadeh
b754b7ac7a Adds ShortcutChangeCallback in LauncherApps - Service side
Bug: 148615405
Test: atest com.android.server.pm.ShortcutManagerTest1 \
            com.android.server.pm.ShortcutManagerTest2 \
            com.android.server.pm.ShortcutManagerTest3 \
            com.android.server.pm.ShortcutManagerTest4 \
            com.android.server.pm.ShortcutManagerTest5 \
            com.android.server.pm.ShortcutManagerTest6 \
            com.android.server.pm.ShortcutManagerTest7 \
            com.android.server.pm.ShortcutManagerTest8 \
            com.android.server.pm.ShortcutManagerTest9 \
            com.android.server.pm.ShortcutManagerTest10

Change-Id: Ida60b2d0b3d5792e7013ffa703b2f3b45361a4db
2020-02-20 10:05:54 -08:00
Dmitri Plotnikov
23132a29eb Merge "Add async version of "canonicalize"" 2020-02-20 17:42:52 +00: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
TreeHugger Robot
4a43fdc863 Merge "Small cleanup in DeviceProductInfo." 2020-02-20 15:41:53 +00:00
Fabian Kozynski
d3b621aa56 Merge "Add API for requesting add controls from Provider" 2020-02-20 14:00:48 +00:00
Marin Shalamanov
636b1713c7 Small cleanup in DeviceProductInfo.
This CL fixes a var name and puts "final" in the corrent order.

Test: m
Change-Id: Id7ec3ac1c6f63d03cabe0d878e84a9ed24386d33
2020-02-20 14:52:07 +01:00
Valentin Iftime
4bf82c8206 Address API council suggestions for UserManager APIs
Test: atest UserManagerTest
Bug: 149742406
Change-Id: I8b408a17de0282b91fcb5c0b66e9d0404fda54b1
2020-02-20 14:29:43 +01:00
Charles Chen
c56ce6fd08 Merge "Exempt-From-Owner-Approval: Report non-visual Context misuse" 2020-02-20 12:30:06 +00:00
Alex Kershaw
f0f598a711 Merge "Enforce the cross-profile intent check." 2020-02-20 11:40:54 +00:00
TreeHugger Robot
1ef019d3e0 Merge "Disable Settings toggle if admin has set always-on VPN" 2020-02-20 10:09:34 +00:00
TreeHugger Robot
58a8b7f51d Merge "Switch to new project ID constants." 2020-02-20 07:59:07 +00:00
Hongwei Wang
c21c7e836e Merge "WindowContainerTransaction: Provide non-BLAST bounds change sync" 2020-02-20 07:30:38 +00:00
Jayant Chowdhary
fd3d196de2 Merge "camera2: Update documentation for getConcurrentStreamingCameraIds to account for availability callbacks." 2020-02-20 06:43:15 +00:00
Automerger Merge Worker
5c3fd8d2b3 Merge "Sanitize owner UID iff owning app does not have location permissions." am: 239908298e am: 8b18b53599 am: 662028385d
Change-Id: I9b8fb3ff8d907ecda918a8a926edb133b742c8f1
2020-02-20 05:59:35 +00:00
Automerger Merge Worker
662028385d Merge "Sanitize owner UID iff owning app does not have location permissions." am: 239908298e am: 8b18b53599
Change-Id: Ib99af41b78dc9539f2a553231e13549d348b72db
2020-02-20 05:48:02 +00:00
Automerger Merge Worker
8b18b53599 Merge "Sanitize owner UID iff owning app does not have location permissions." am: 239908298e
Change-Id: Ie5876d063d7440aacc57d48cb4573798303910ea
2020-02-20 05:30:20 +00:00
Sudheer Shanka
9244b3809f Merge "Add LongSparseArray.removeIf(Predicate)." 2020-02-20 05:22:06 +00:00
Qingxi Li
239908298e Merge "Sanitize owner UID iff owning app does not have location permissions." 2020-02-20 05:20:27 +00:00
Automerger Merge Worker
33b8bf685a Merge "Make me an owner of accessibility frameworks" am: 269d57b7da am: 6374aaf5c5 am: 865c89c5a3
Change-Id: I88fd0443d59c45ad625af9d72f05d8de8e4cb783
2020-02-20 04:29:31 +00:00
Nikita Dubrovsky
72a7f8a7b3 Merge changes from topic "cursor-control-flags"
* changes:
  Allow setting defaults for DeviceConfig flags plumbed via settings
  Use DeviceConfig flags for cursor drag and insertion handle gestures
2020-02-20 04:23:20 +00:00
Yohei Yukawa
62612562d0 Merge "Offload user-switching task from startInputOrWindowGainedFocus()" 2020-02-20 03:27:26 +00:00
Mehdi Alizadeh
f1bdf99b89 Merge "Adds ShortcutManager#pushDynamicShortcut(ShortcutInfo)" 2020-02-20 03:06:28 +00:00
Jayant Chowdhary
69531d8331 Merge "camera2: Update spec for mandatory concurrent stream combinations." 2020-02-20 03:04:01 +00:00
Peter_Liang
f532a2351b Revise the parameter of public API for allow rich content.
Change "loadAnimatedImage(PackageManager)" to "loadAnimatedImage(Context)"

Bug: 142532186
Test: manual test
Change-Id: I3a6f61fbcd06e73d17cc20ea60effa6e84f0db7b
2020-02-20 02:46:03 +00:00
Sudheer Shanka
a43148216a Add LongSparseArray.removeIf(Predicate).
Fixes: 149648797
Test: atest core/tests/coretests/src/android/util/LongSparseArrayTest.java
Change-Id: Ib7e73dcfe8be1dc1f3af577f30da7ebd5950d42a
2020-02-19 18:44:10 -08:00
Robert Carr
711e7051ce WindowContainerTransaction: Provide non-BLAST bounds change sync
This is to enable landing the SysUI driven PiP animation without BLAST. Without
BLAST we can't support multi container sync, multi buffer sync, etc, but we can
support the same sort of synchronization we've supported before. Let's recall how
the old PIP animation works: At the end of the enter animation, or the beginning
of the leave animation, the Surface changes size (When the Windowing mode changes).
We detect this size change deep in the guts of WindowStateAnimator, and when
we detect that we are called from "relayoutWindow" defer a transaction changing
the PIP scaling factors. This approach is we simply allow SysUI to set a pending
Transaction on a task via the WindowContainerTransaction API. The next BASE_APPLICATION
window to resize in this task will consume this transaciton, and defer the transaction
until the frame in which it resizes.

Bug: 139371701
Bug: 139371701
Test: Manual test with pending SysUI branch
Change-Id: I1e757d87e2f276db626de00685b0432508ac6d62
2020-02-20 01:59:37 +00:00
TreeHugger Robot
23605f217b Merge "Add a version field to the v4 signature file format" 2020-02-20 01:47:33 +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
Jackal Guo
bc67dc3f21 Merge "Adjust the logic of isImportantForAccessibility" 2020-02-20 01:23:14 +00:00
Yohei Yukawa
d277d6902f Offload user-switching task from startInputOrWindowGainedFocus()
As tracked in Bug 28750507, InputMethodManagerService#onSwitchUser()
is known to be slow, and the direct reason of the UI jank in the
launcher discussed Bug 139806621 is that #onSwitchUser() is running as
part of IMMS#startInputOrWindowGainedFocus() that is called as a sync
IPC from the UI thread of the launcher.  Note that this is a
relatively new behavior that was introduced in Android 10 to support
per-profile IME mode (Bug 111083076). So users shouldn't see this code
path unless the device is running on Android 10 with work profile
enabled.

What this CL does is removing that direct code path from
IMMS#startInputOrWindowGainedFocus() to #onSwitchUser() by introducing
a new pending result

  InputBindResult.ResultCode.SUCCESS_WAITING_USER_SWITCHING,

which means

  IMMS is now performing user switching and cannot start input session
  right now, but it will call the client back when the IME becomes
  available for the target user.

Note that InputMethodManager is already able to handle this kind of
pending state, where IME is not yet available, since we already have a
similar pending results as follows.

 * InputBindResult.ResultCode.SUCCESS_WAITING_USER_SWITCHING
 * InputBindResult.ResultCode.SUCCESS_WAITING_IME_BINDING

One remaining concern is that when IMMS#switchUserOnHandlerLocked() is
running with holding the giant lock (IMMS#mMethodMap), thus it's still
possible that IMMS#startInputOrWindowGainedFocus() can be blocked
because of lock contention, which eventually blocks client's UI
thread.  Although its chance wouldn't be that high, in order to tackle
that scenario we need to pursue different approaches such as:

 * Further optimize IMMS#startInputOrWindowGainedFocus() to reduce the
   likelihood of lock contention. This isn't a perfect solution for
   this particular case but it's still worth doing.  Possible
   candidate of optimizations are:
    * Bug 28750507:  optimize IMMS#switchUserOnHandlerLocked()
    * Bug 149864769: off-load Context#unbindService()
    * Reconsider the use of giant lock.

 * Redesign the current "startInput" protocol as part of our on-going
   effort to redesign IME focus handling protocol (Bug 141738570)
   e.g. can we completely make IMMS#startInputOrWindowGainedFocus()
   async IPC?

Bug: 139806621
Fix: 144291210
Test: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases
Test: Manually made sure that IMMS#startInputOrWindowGainedFocus()
      isn't blocking Launcher's UI thread when swiping home.
  1. lunch aosp_coral-userdebug && make -j
  2. Flash the image
  3. Open the system settings
  4. System -> Gestures -> System nagivation
  5. Select "Gesture nagivation"
  6. Install Test DPC.
  7. Enable managed profile with Test DPC.
  8. adb install -r \
        $ANDROID_TARGET_OUT_TESTCASES/EditTextVariations/EditTextVariations.apk
  # deal with dex2oat
  9. adb shell cmd package compile -m speed \
        -f com.google.android.inputmethod.latin
 10. adb shell cmd package compile -m speed \
        -f com.android.inputmethod.tools.edittextvariations
 11. adb shell cmd package compile -m speed \
        -f com.google.android.apps.nexuslauncher
 12. adb root
 13. adb shell setprop pm.dexopt.disable_bg_dexopt true
 14. adb reboot
 15. adb shell am start -u 10 \
        -n com.android.inputmethod.tools.edittextvariations/.EditTextVariations
 16. Tap the first edit text on the EditTextVariations
 17. Make sure that AOSP Keyboard is shown
 18. adb shell am trace-ipc start
 19. external/chromium-trace/systrace.py \
        gfx freq am wm sched binder_driver view \
        -a com.android.launcher3 -o binder.html
 20. Swipe up the home button
 21. Hit the enter key to terminate the systrace.
 22. Check the IPC log to see how much the UI thread is blocked by
     IMMS#startInputOrWindowGainedFocus()
Change-Id: I5a73a66d2b8acadad9b3577ebc4c17b5a25fd011
2020-02-19 17:12:17 -08:00
TreeHugger Robot
ac8f1fbd2f Merge "Logically revert previous attempts on Bug 139806621" 2020-02-20 01:07:41 +00:00
Benedict Wong
be37378755 Merge "DO NOT MERGE: RELAND: NetworkRequest: Embed requestor uid & packageName" into stage-aosp-master 2020-02-20 01:03:46 +00:00
Qingxi Li
9c5d8b963c Sanitize owner UID iff owning app does not have location permissions.
This change adds permission checking to ensure that the following
conditions are enforced in order for apps to receive the owner UID:
1. The app must be the owner of the network
2. The app must hold the FINE_LOCATION permission/appop
3. The user must have their location toggle enabled.

Bug: 142072839
Test: atest FrameworksNetTests
Change-Id: I7a981a82f1219828ee89c8c96eb9d2efd153377f
2020-02-20 01:02:42 +00:00
Varun Shah
abe60fe376 Merge "Share Standby Bucket state between cross profile interacting apps" 2020-02-20 00:50:52 +00:00
Shu Chen
c54b3fad76 Merge "Supports dynamic height for the new magnifier." 2020-02-20 00:43:39 +00:00
Automerger Merge Worker
865c89c5a3 Merge "Make me an owner of accessibility frameworks" am: 269d57b7da am: 6374aaf5c5
Change-Id: I6e77351968e91abe1e6f8bf4f894a8896cedadaa
2020-02-20 00:39:32 +00:00
Automerger Merge Worker
6374aaf5c5 Merge "Make me an owner of accessibility frameworks" am: 269d57b7da
Change-Id: Ibf012b4b2221ceee9d616b78aae7971ddd042cc6
2020-02-20 00:24:03 +00:00
Treehugger Robot
269d57b7da Merge "Make me an owner of accessibility frameworks" 2020-02-20 00:05:45 +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
PETER LIANG
2187f9e855 Merge "Revise the modifier and naming of public APIs for allow rich content." 2020-02-19 23:51:48 +00:00