clients of fingerprint sensor state changes
Implements FingerprintStateCallback class to receive notifications of
changes in fingerprint state, and updates ServiceProvider method
signatures and Fingerprint21 accordingly to use this callback type for
authentication, enrollment, and other side fps events. Also defines
FingerprintStateListener class to forward state changes in
fingerprint-related events from FingerprintService to the
SideFpsEventHandler, which defines logic for PhoneWindowManager to use
in interactions between power button state and side fps state.
Test: adb shell dumpsys fingerprint
Bug: 183997671
Change-Id: I3147d41074589fe5a47434b96d10e78182ab3747
Adds logging to the framework for new authentication and biometric atoms
introduced as part of ag/13856328.
Test: Manually trigger each case and verify log statements are called.
Bug: 185136248
Change-Id: I2783e4738eac36f34b073107afbd67ce1df4b0fb
Makes the following changes to the BiometricManager strings API:
- Move string getter methods to a static nested StringProvider class
- Add a BiometricManager method to get a StringProvider instance
- Document when null may be returned and how (not) to interpret it
Test: atest BiometricManagerTest
Test: Manually logged strings in biometric test app
Bug: 182793560
Change-Id: I27862bd5f67ea291f166a7ac91b03c7c432da64f
Add TestApi LightsManager#openSession(int priority) to allow sorting of
sessions by descending priority. Assuming priority 0 for public API
LightsManager#openSession().
Bug: 185877106
Test: atest LightsManagerTest
Change-Id: I4a2d9f8982119b47cbcbf77ff43377fecb343112
This string is used to refer to configuration settings and when
preserving the values in permanent storage.
Bug: 184813910
Test: atest HdmiControlManagerTest HdmiCecConfigTest
Change-Id: I9c24b627f71b808533ef31d0c371ff7301bc757e
CryptoObject still called the legacy AndroidKeystoreProvider which did
not return the correct operation handle for per operation auth bound
keys.
Bug: 184804041
Bug: 185181377
Test: CtsVerifier->Security->Biometric Tests->2a Strong Biometrics +
Crypto
Merged-In: I0bceff0425e7ef32c394f33deda3c78f729c0c6c
Change-Id: I0bceff0425e7ef32c394f33deda3c78f729c0c6c
Fixes: 184965821
Test: On various devices:
adb shell settings put secure biometric_app_enabled 0/1
adb shell settings put secure biometric_keyguard_enabled 0/1
Test: On face-only devices that shipped before S:
Existing settings (settings > security > face unlock) are not
affected and still work.
Newly added secure settings do not take effect (as expected)
Test: atest com.android.server.biometrics
Test: atest KeyguardUpdateMonitorTest
Change-Id: Ie0fda46facefd3ecfbbce6ef769d6d8e9fdfb09b
Bug: 185207500
Test: Build, locally tested a simple app that calls
SensorManager.registerListener() and observed that the log
CompatibilityChangeReporter: Compat change id reported: 136069189
is no longer printed out in logcat.
Change-Id: I8ef197b650bb07638300045d42de96ba3bcd20e2
Add hidden APIs to expose the supported frequency range and maximum
amplitudes at each frequency for the device in Vibrator.java.
Also add a hidden method hasFrequencyControl().
Bug: 167947076
Test: VibratorTest
Change-Id: If2d5f8f0aa92223b4a342893f5fd3a1668dfcff1
Add a new hidden API to Vibrator and VibratorManager that allows
vibrations to be cancelled based on their usage attribute.
The new API is used by the NotificationManagerService on volume button
press to only cancel ongoing attentional haptics, triggered for alarm,
notification or ringtone.
Fix: 182440404
Test: VibratorManagerTest & BuzzBeepBlinkTest
Change-Id: I4bf55928cf3b7dd79f66d53d570001a5205ce2d0
The change makes the distinction between VibrationEffect and
CombinedVibratio clearer. The later is a combination of the former with
the extra information about the vibrator ids, allowing effects to be
played in one or more vibrators in parallel or in sequence.
The methods create/start synced where also renamed to parallel (together
with respective builder classes), to indicate they perform one or more
effects in parallel on multiple vibrators. This is also a better match
to the sequential combinations.
This change also deprecates the Context.VIBRATOR_SERVICE in favour of
the new VIBRATOR_MANAGER_SERVICE. The default vibrator can be retrieved
from the manager system service.
Same deprecation applied to InputDevice.getVibrator method.
Fix: 184123900
Test: CombinedVibrationTest
Change-Id: I44d8b225098d35fbf7783254acaf6a78f9fb4505
UDFPS needs to lock to a given refresh rate in order to function
properly, so we register a listener for when it's enabled in order to
make sure it gets the right refresh rates.
Bug: 181682258
Test: atest DisplayModeDirectorTest
Change-Id: I54afb12f8e4f03a3b0c384112fc2d9b1806de719
1) Sets the sensor property based on the HAL, instead of hard coding
false
2) Schedules/cancels detection when requested
3) Updates biometric dumpsys to include internal properties
Test: atest com.android.server.biometrics
Test: adb shell dumpsys biometric
Test: manual
Bug: 184672091
Change-Id: I2fb1db0994f6d2ed235420967d78e70f1b13cdd0
HdmiControlService.oneTouchPlay method is already switching the
long running one touch play process to the service thread from
the UI thread and is also able to handle multiple OTP requests
in parallel. Remove TODO to use PendingResult.
Bug: 159901363
Test: None
Change-Id: Ife8c8268edb8a40255a52dd1eda2ab60020803c8
With Frame Rate Override enabled, an app could get an onDisplayChanged
events which seems redundant. An example would be:
1. Display changed refresh rate to 60Hz - onDisplayChanged was called
2. App's frame rate override changed to 60Hz - onDisplayChanged was called
To avoid sending these redundant events, DisplayManagerGlobal caches
the last DisplayInfo that was reported to the app and based on it it
decides whether to send the event or not.
Bug: 184588343
Test: atest SetFrameRateTest
Test: atest FrameRateOverrideHostTest
Change-Id: I97c7b2b9a799424998b1b717a4311d3d08b3178f