* changes:
11/n: Remove unnecessary things from BiometricAuthenticator
10/n: Split ClientMonitor functionality into appropriate subclasses
9/n: Remove MetricsLogger and Constants from biometrics
8/n: Move acquire message ignoring to face subclasses
7/n: Move Fingerprint/Face AuthenticationClients to their own file
6/n: Decouple remainder of lockout stuff
5/n: Virtualize biometric performance stats
4/n: Start moving fingerprint lockout to its own class
3/n: Move internal cleanup to its own ClientMonitor subclass
2/n: Clean up ClientMonitor
1/n: Move modality-specific files into new subdirectory
This interface was created before the existence of BiometricService.
Since the sensor registration, arbitration, etc all exist in
BiometricService layer, most of the things here can be removed and
split into separate classes.
Bug: 157790417
Test: Builds
Change-Id: I91ebc13959943b86b93d4fff46ee99050f2cb7bc
A11y service cannot get focus of bubbles because it's not a
System owned display. This patch makes System UI owned display
a trusted display. Moreover, this patch refactors the logic to
identify a trusted display by introducing FLAG_TRUSTED and
removes the trusted display check along with supportsSystemDecorations()
because the check has been included in supportsSystemDecorations().
fixes: 155823002
Bug: 152416787
Test: atest DisplayContentTests
Test: atest WindowFocusTests
Test: atest TaskDisplayAreaTests
Test: atest MultiDisplaySystemDecorationTests
Test: atest DisplayTest
Change-Id: Ie684c6488904e5aa8cae166a455c6d55455e5f55
The callback holder was removed when the capture sequence is
completed, which is too soon because the buffer loss callback could
potentially arrives later than the capture sequence completion.
Defer the deletion of the callback holder to when the native inflight
request is removed, which takes into consideration of error
notifications.
Test: Camera CTS
Bug: 155353799
Change-Id: I56b9bfbe182ba6fc0ec2cb543fc32774ed3f6f1a
Revert submission 11415576-bufferErrorLossFix
Reason for revert: Breaks Camera on at least the wembley device
Reverted Changes:
I12b716acc:Camera: Fix race for onCaptureBufferLost callback
I43f0f5ea1:Camera: Add lastCompletedFrameNumber in CaptureRes...
Bug: 158622719
Change-Id: Id95d0f157c0f940cc80d0fb3c8f95d62968a4745
Test: Locally tried this revert on rvc-dev on a wembley, and now the Camera works
Due to a surprising behavior of Handler.obtainMessage(), the argument
that indicated whether the service is available was always read as 0
(enabled), and we never correctly handled the service being
unavailable (due to concurrent capture).
Bug: 157496890
Test: Enabled debug logging and verified that the message is now
passed correctly and that indeed that models get inactivated
when capture starts and reactivated when it stops.
Change-Id: Ibf4ecdb4e4dd0f5a02d5a388afddb205c29eb2ea
The audio format doesn't always make sense in recognition events, for
example in a failure or abort event, so we allow it to be null.
However since the SoundTrigger.java API doesn't allow that, we inject
a default if it is not available.
Bug: 157496890
Test: Simulated a device that doesn't support concurrent capture,
reproduced the bug, applied the fix, verified.
Change-Id: I1e4adf9f3ccdc0f62cb9ca5e8c07df3c40a9d2cd
1) ClientMonitors should be less "abstract", and should be instantiated
with knowledge of "sensorId" and "strength"
2) ClientMonitors should not care about who their client is (e.g.
FingerprintManager, FaceManager, BiometricService). As such,
added a new shim (ClientMonitorCallbackConverter) that receives
callbacks from ClientMonitor and forwards it to the client it was
instantiated with.
Fixes: 157077040
Bug: 157184083
Test: atest com.android.server.biometrics
Test: 1) Enroll, auth on keyguard, auth in BiometricPromptDemo,
remove via settings
2) Enumerate/cleanup - modify FingerprintUtils/FaceUtils to either
store an extra template, or no template in the framework cache
upon enroll completion. reboot device, notice either "framework
template" being removed, or "HAL template" being removed
Note: We should move InternalEnumerateClient / InternalRemovalClient
into their own monitor subclass to remove global state tracking
in BiometricServiceBase
Note: We can consider breaking down ClientMonitorCallbackConverter into
an interface or abstract class, to be implemented by receiver
specific implementations, but it might be a premature optimization
for now
Change-Id: I4716fdfc3f8156ce0b7d2e8ab1af344200b417d1
The callback holder was removed when the capture sequence is
completed, which is too soon because the buffer loss callback could
potentially arrives later than the capture sequence completion.
Defer the deletion of the callback holder to when the native inflight
request is removed, which takes into consideration of error
notifications.
Test: Camera CTS
Bug: 155353799
Change-Id: I12b716acc9fbaa9791f0498ac77d4470a7448d5a
This CL annotates multiple APIs in the HdmiControlManager as Test APIs.
Also creates a Test api wrapper for aidl interface IHdmiControlService.
HdmiPortInfo is the param under test that is also annotated as Test API.
Test: atest android.hardware.hdmi.cts
Bug: 155113872
Change-Id: I58b483eaaa5fe08f90415a7e044c30a28dc7d7c2
Adds a listener to receive updates to the state of the HDMI CEC volume
control features.
Interested parties can register and unregister to get notified about
state updates which are sent on every change to the value.
Test: atest HdmiControlServiceTest
Bug: 152018314
Change-Id: I342d748114bae99b3c3f236502d73bfeac9e9ac5
Merged-In: I342d748114bae99b3c3f236502d73bfeac9e9ac5