Commit Graph

468813 Commits

Author SHA1 Message Date
Alex Kershaw
e7a405a54e Merge "Give new permission to set cross-profile app-op to ManagedProvisioning" 2020-02-11 22:44:23 +00:00
Steven Moreland
35d04c27ee Merge "Remove String16 operator<<, now provided in header" 2020-02-11 22:43:26 +00:00
Tyler Gunn
0c62ef09bb Mark adhoc conference call APIs as @hide.
Test: make -j update-api
Test: Run unit tests
Bug: 62151032
Change-Id: I8fe9c4d2c9a8861deea3a0def82c432762cd1222
2020-02-11 14:39:43 -08:00
TreeHugger Robot
bace1cd5a4 Merge "DO NOT MERGE - Use TimingsTraceLog on SystemServiceManager and VoiceInteractionManagerService." into qt-qpr1-dev 2020-02-11 22:39:07 +00:00
Dianne Hackborn
f2c1e2d6b5 Fix issue #148305913 Upon upgrading ... stuck on G logo
Check for null.

Bug: 148305913
Test: manually booted
Change-Id: If93c37ace6ebe114d7afc01a169848ec970fa8b6
2020-02-11 14:39:02 -08:00
Patrick Baumann
58e6d8c196 Merge "Dump when forcequeryableoverride is set" 2020-02-11 22:33:48 +00:00
Automerger Merge Worker
30afdb5300 Merge "Give CONTROL_DEVICE_LIGHTS permission to the shell" am: 668daf0341 am: 285f6781c1
Change-Id: I118e59b1d9d3448ecb7e5bccffb3045c7828f45f
2020-02-11 22:32:10 +00:00
Pinyao Ting
5052796bf0 Revert "enable dynamic binding in AppPredictionSession"
This reverts commit 6b172567d5.

Reason for revert: Unexpected Crash

Bug: 149282975
Change-Id: I674397398ae40d106f84e6a650f75e77769e9de1
2020-02-11 22:30:42 +00:00
Sasha Kuznetsov
db44f628cd Merge "Revert^2 "Add GnssAntennaInfo framework APIs" + added fixes" 2020-02-11 22:29:33 +00:00
Chih-Hung Hsieh
f2ef6579f2 Fix clang-tidy performance-faster-string-find warnings
Bug: 30411878
Test: build with WITH_TIDY=1
Change-Id: I7fd815aa401fbcaff97b772f3ba5d6f1d2034011
2020-02-11 14:27:11 -08:00
Soonil Nagarkar
68ac69b0a5 Merge "Fix work profile handling across location" 2020-02-11 22:19:56 +00:00
TreeHugger Robot
9b47c2a477 Merge "Hook up bind pipeline to CommonNotifCollection" 2020-02-11 22:18:40 +00:00
Automerger Merge Worker
285f6781c1 Merge "Give CONTROL_DEVICE_LIGHTS permission to the shell" am: 668daf0341
Change-Id: I8f0d55f7a310e6dff8cf552e5ddf929eb8d0c2b7
2020-02-11 22:14:58 +00:00
kwaky
fffd182650 Add null check for voiceInteractorComponentName.
Voice Assistant can be disabled on a user-level. Adding this null check
prevents crash for when Assistant is enabled for the system in general but
disabled for a specific user.

Bug: 149112015
Test: Manual -- Change config_disableLockscreenByDefault to true to
emulate the environment in which Volvo observed the bug. Verify that
switching to user0 through adb shell switch-user 0 causes the same crash.
Verify that the crash does not happen with the new null check.

Change-Id: I5b8ede1e5bd8c1bc047bc6d6220b425dea8f50ea
2020-02-11 14:12:32 -08:00
Heemin Seog
e2e77a0d54 Delay registering of callbacks until bouncer is created
Bug: 149188153
Test: manual (build, boot, set lockscreen, show keyguard), atest
SystemUITests

Change-Id: I46b50f1e937746e937de78b01edb5cc7c4cf37b3
2020-02-11 14:11:57 -08:00
TreeHugger Robot
b0fe609d9b Merge "Unmark PackageParser APIs as @Deprecated" 2020-02-11 22:10:09 +00:00
TreeHugger Robot
715aa7add9 Merge "Query for BLAST flag outside of constructor" 2020-02-11 22:07:22 +00:00
Soonil Nagarkar
77a9227b19 Fix work profile handling across location
There were a couple problems with work profile state in location. First,
we assumed that notifications sent to parent users would also be sent to
profiles but this is not true. Second we had assumed location status in
profiles was always identical to the parent user, but work profiles may
have user restrictions applied which are not present on the parent user.
The easiest way to handle these issues seems to be to expand LMS user
handling to deal with all users, rather than making various assumptions
which may or may not be true.

This also means we need to store last locations on a per profile basis.
Since we're refactoring how last location works completely, we also
removed the special NO_GPS handling for last locations. With the new
permission strings we now no longer have to exclude gnss based location
from coarsening. This lets us:

1) deprecate and remove various constants and methods use for storing
coarse locations tied to fine locations
2) substantially simplify code that calculated coarse location

This also exposed numerous bugs in the location service where we were
using the current user's state instead of the calling user's state,
which could have exposed the current user's location to other users
inappropriately.

Bug: 148798374
Bug: 146071833
Test: presubmits + manual
Change-Id: I2d3216a9fb58b73d0124d563b05de8870b70b716
2020-02-11 14:04:39 -08:00
Leon Scroggins III
2e6bedf937 AImageDecoder: Make create enforce int32_t dimensions
Bug: 135133301
Test: AImageDecoderTest

AImageDecoderHeaderInfo_getWidth/Height return an int32_t. Ensure at
creation time that the actual image dimensions will fit in int32_t.

In today's code, this should almost never happen:
- PNGs have their dimensions limited to 1000000
  - see PNG_USER_WIDTH_MAX and PNG_USER_HEIGHT_MAX in pnglibconf.h
- JPEGs are limited to 65500
  - see JPEG_MAX_DIMENSION in jmorecfg.h
- WebPs' dimensions are encoded in 14 bits
- GIFs' dimensions are encoded in 16 bits
- SkBmpCodec and SkWbmpCodec require dimensions to fit in 16 bits
- SkIcoCodec uses SkBmpCodec or SkPngCodec, so their limits are
  enforced
- libheif limits to a size smaller than int32_t

It might be possible for a DNG image to be larger, and some of the above
are configurable. Just in case, make AImageDecoder_create fail on such a
large image.

Change-Id: Id520dfbc0581f990c4f52cb6675e987bf71c558c
2020-02-11 17:01:46 -05:00
Curtis Belmonte
a8b50a6f5b Make BiometricService check for internal permission
Previously, some paths through BiometricService needed to be accessible
by apps. Now that external calls are routed through AuthService instead,
we can check for the system-only USE_BIOMETRIC_INTERNAL permission
everywhere that we had been checking for USE_BIOMETRIC in
BiometricService.

In order for this to be enforced properly, we also need to move some
of the permission checks that were previously in BiometricService to
AuthService, which is now the primary entry point for applications
invoking the relevant biometric APIs.

Test: com.android.server.biometrics
Test: Manually verified functionality using support biometric demo app

Bug: 148971767
Change-Id: Ieab61276c6375b0d674f73e1833edabc8700fe74
2020-02-11 13:56:45 -08:00
Automerger Merge Worker
9a6a674052 Merge "[automerger skipped] Merge "Add HomeVisibilityObserver APIs in ActivityManager." am: cb47d86158 am: c1363ad2b9 am: f0b9f042de -s ours am skip reason: Change-Id I2f250cdd53a667b2d89e84e589b0ae0bc94a8aa3 with SHA-1 c99b83b95f is in history" 2020-02-11 21:55:21 +00:00
Treehugger Robot
668daf0341 Merge "Give CONTROL_DEVICE_LIGHTS permission to the shell" 2020-02-11 21:55:09 +00:00
TreeHugger Robot
4ea476c9c8 Merge "AudioManager: listener for changes to preferred device for strategy" 2020-02-11 21:55:08 +00:00
Automerger Merge Worker
1aace60d5f [automerger skipped] Merge "Add HomeVisibilityObserver APIs in ActivityManager." am: cb47d86158 am: c1363ad2b9 am: f0b9f042de -s ours
am skip reason: Change-Id I2f250cdd53a667b2d89e84e589b0ae0bc94a8aa3 with SHA-1 c99b83b95f is in history

Change-Id: I2a423f4e9d1d8f5e008a96c8fc7719855be4ed76
2020-02-11 21:55:00 +00:00
Julia Reynolds
3f39de97d0 Merge changes from topic "jr-hist-snooze"
* changes:
  Add tracing for notification history actions
  Optionally exclude snoozed notifs from dismissal archive
2020-02-11 21:54:58 +00:00
Automerger Merge Worker
00712e260c [automerger skipped] Merge changes I7099048c,If6965979 am: fd46f62892 am: e92242378e am: 8193829601 -s ours
am skip reason: Change-Id I7099048c126e88f75cf5bd7e779ddfe923cc1c02 with SHA-1 012223b366 is in history

Change-Id: Ica6a6bb378022eb1a2e5fcabe647d4947724dd0c
2020-02-11 21:54:40 +00:00
Automerger Merge Worker
c9ec407ff2 [automerger skipped] Make Telephony to Setting notification @SystemApi am: 7c5e823965 am: 6078c8641f am: 0d7c07c7b6 -s ours
am skip reason: Change-Id If6965979b5ab15b53f8e81cad895cc2d3dc29e0e with SHA-1 af2d303621 is in history

Change-Id: I27983f9c28dbb110fec156eb6ece6c22e19b9812
2020-02-11 21:54:34 +00:00
Automerger Merge Worker
0babada55a [automerger skipped] Merge "Import translations. DO NOT MERGE" am: e53f6ddd8f -s ours am: fd90ba695c -s ours am: f68b28e3e4 -s ours
am skip reason: subject contains skip directive

Change-Id: I0d09343e28d0bef9e58fc3be0c01a2f6b175c641
2020-02-11 21:54:07 +00:00
Collin Fijalkovich
ea34d76ff8 Activate Telephony Service Handle Caching
The infrastructure for telephony handle caching was checked in in
ag/10255108, but disabled due to changes that needed to be made in AOSP.
This CL activates the caching.

Test: atest PhoneSubInfoControllerTest
Test: atest DcTrackerTest
Test: atest CellBroadcastConfigTest
Bug: 140788621
Change-Id: I42c829a07f9192ccbedef38e835019804eb20978
2020-02-11 13:52:09 -08:00
TreeHugger Robot
ddf7bf1280 Merge "Fix PowerManager tests." 2020-02-11 21:43:01 +00:00
Matt Pietal
a3ef50bcce Merge "Controls API - New method for suggested controls" 2020-02-11 21:37:11 +00:00
Sudheer Shanka
bffb8ef774 Temporarily disable BlobStorePerfTests.
Bug: 149324953
Test: atest ./apct-tests/perftests/blobstore/src/com/android/perftests/blob/BlobStorePerfTests.java
Change-Id: I4d012106ff86ddc0391b32e888a784eafb42c494
2020-02-11 13:36:43 -08:00
Automerger Merge Worker
f0b9f042de Merge "Add HomeVisibilityObserver APIs in ActivityManager." am: cb47d86158 am: c1363ad2b9
Change-Id: If7b65fd40532a8868463a5d545da5c197676ffe8
2020-02-11 21:34:57 +00:00
Automerger Merge Worker
8193829601 Merge changes I7099048c,If6965979 am: fd46f62892 am: e92242378e
Change-Id: Ifc9d0c5bda88dc0107427c09183f6c0e259c6b83
2020-02-11 21:34:41 +00:00
Automerger Merge Worker
0d7c07c7b6 Make Telephony to Setting notification @SystemApi am: 7c5e823965 am: 6078c8641f
Change-Id: Ic9b5187561b51565877977450a157364689a6069
2020-02-11 21:34:37 +00:00
Automerger Merge Worker
f68b28e3e4 [automerger skipped] Merge "Import translations. DO NOT MERGE" am: e53f6ddd8f -s ours am: fd90ba695c -s ours
am skip reason: subject contains skip directive

Change-Id: I16c06c6e1abed25d121133ec8ec0a8f2411c2a84
2020-02-11 21:34:12 +00:00
Julia Reynolds
7e08acb5a1 Update notification text style
Body font, not headline

Test: manual
Fixes: 149328181
Change-Id: Id94692fe02d6b3a8a9470f32582e43fcbefa65f0
2020-02-11 21:33:09 +00:00
TreeHugger Robot
e8759cc707 Merge "Deprecate Gps* APIs" 2020-02-11 21:31:50 +00:00
Ravi Paluri
404babbb98 Ims: Add support to add participants to existing call
Supports initiation of a conference call
by directly adding participants to existing call

Test: Manual
Bug: 62151032
Change-Id: I4e60efafab4761ae65a460fdc6c4cacc3e233220
2020-02-11 13:30:38 -08:00
Glenn Kasten
1c93527d16 Deprecate OpenSL ES for Android as of API level 30 (R)
Bug: 134958169
Test: try with an NDK r21 canary for both R and earlier, and a pre-21 NDK
Change-Id: Ie0a317debd07230d344218c5874f3060dc3ab85f
2020-02-11 13:29:09 -08:00
TreeHugger Robot
fdb5c0917d Merge "Decouple Keyguard user switch font size from QS user switcher." 2020-02-11 21:26:48 +00:00
Alex Buynytskyy
f3b2e68fae Merge "Incremental installations in PackageManagerShellCommand." 2020-02-11 21:24:55 +00:00
Dave Mankoff
d6d73cf3aa Merge "Capture recent motion events used for falsing." 2020-02-11 21:20:36 +00:00
Muhammad Qureshi
bbb8e990d5 Merge "Clean up framework-statsd" 2020-02-11 21:19:27 +00:00
Automerger Merge Worker
3824a8b5c8 [automerger skipped] Merge "Import translations. DO NOT MERGE" am: f76575265c -s ours am: 14cb134570 -s ours am: 4cbf21d607 -s ours
am skip reason: subject contains skip directive

Change-Id: Ifeaf2b8e8660d924c1c36f487acc06fb8f9019bb
2020-02-11 21:12:27 +00:00
Alex Buynytskyy
04f7391fc3 Incremental installations in PackageManagerShellCommand.
- onPrepareImage in native,
- allow to check installation type and choose native or managed
dataloaders,
- native data loader for Incremental,
- install-incremental shell command.

Test: atest PackageManagerShellCommandTest
Test: atest IncrementalServiceTest
Bug: b/136132412 b/133435829
Change-Id: I530a8a203fb50132c1869abd0b869036add18699
2020-02-11 13:11:31 -08:00
Automerger Merge Worker
c1363ad2b9 Merge "Add HomeVisibilityObserver APIs in ActivityManager." am: cb47d86158
Change-Id: Ib48d687e8da2941fa3385aa5066e4d490b1d3ad8
2020-02-11 21:10:48 +00:00
Robert Carr
176412a830 SurfaceControl: C++ Binding Lifetime refactoring
First we eliminate the "dropReferenceTransaction" semantic. This semantic
reparents the surface to null if the C++ object dies before release() is
called. This is a legacy semantic from before SurfaceControls were reference
counted. I point that it's unused by noting that all Java code paths
will lead to calling release() in the JNI code before dropping the last reference.

With dropReferenceTransaction gone we can remove mOwned it has no further uses.

With these gone we now remove release() all together on the native side. This
means that mClient and mHandle will only be written from the
constructor and destructor making access to them thread-safe
as long as you hold an sp<> to the SurfaceControl. This should prevent
bugs like we've had in the past about who calls release when, no one calls it!

The final question is: is removing the call to release on the Java side safe?
We still need an explicit Java binding release call so we can drop the native
reference in a timely fashion. This then breaks down in to two scenarios:
          1. We are the last reference
          2. Someone else holds a reference
If we are in the first scenario, then calling release or not is equivalent to just
dropping the reference. If we are in the second scenario, calling release()
will be unsafe. Because we could at any time overwrite mClient/mHandle after
the other ref holder had verified it was null.

The main path I know of for how native code could acquire a second reference
to the JNI owned SurfaceControl is via Transaction::registerSurfaceControlForCallback
then if we release while Transaction::writeToParcel is running, it will inevitably
segfault. This change could lead to the extension of life-time for SurfaceControl.cpp
objects while the Transaction containing them is alive (but previously the
SurfaceControl.cpp proxy would have been released). I also argue this is safe since
the sp<IBinder> itself was reffed in another place in the Transaction so the lifetime
of the actual server side resource isn't extended at all. Only the lightweight proxy
object.

Bug: 149055469
Bug: 149315421
Test: Existing tests pass.
Change-Id: Ibd4d1804ef18a9c389c7f9112d15872cfe44b22e
2020-02-11 21:10:13 +00:00
Automerger Merge Worker
e92242378e Merge changes I7099048c,If6965979 am: fd46f62892
Change-Id: Ida71dbbdc2d608d551e5e05483f5beea3a294f65
2020-02-11 21:09:50 +00:00
Sudheer Shanka
dbcea15fe7 Fix a grammatical mistake in javadoc.
Bug: 148797775
Test: n/a
Change-Id: Ie04e380b6356ea3357db6f1170079c8040aa7fa7
2020-02-11 21:09:49 +00:00