TrebleDroid / treble_experimentations

Scripts to automatically build/CI/Release TrebleDroid GSI
Other
203 stars 26 forks source link

[Nubia Redmagic 8 Pro] Fingerprint not working #27

Open cawilliamson opened 1 year ago

cawilliamson commented 1 year ago

Current Behavior:

  1. Attempt to use fingerprint sensor to setup fingerprint unlock
  2. Get an error stating: Fingerprint setup timed out - Fingerprint enrolment didn't work. Try again or use a different finger.

Describe the bug

Whenever I attempt to enroll a finger on the under-screen fingerprint reader - I am given the error described above.

To Reproduce

  1. Flash any GSI based on the latest TrebleDroid repo
  2. Attempt to enroll a fingerprint
  3. See error described above

Expected behavior

  1. Flash any GSI based on the latest TrebleDroid repo
  2. Successfully enroll a fingerprint
  3. Unlock the device with provided fingerprint

Smartphone (please complete the following information):

Additional context

I have retrieved the following from logcat while attempting to enroll (grepped for fingerprint)

05-12 17:23:05.437  3215  3215 D BiometricScheduler/Fingerprint21: [Added] {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}, new queue size: 1
05-12 17:23:05.438  3215  3215 D BiometricScheduler/Fingerprint21: [Polled] {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}, State: 0
05-12 17:23:05.438  3215  3215 D BiometricScheduler/Fingerprint21: [Started] {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}
05-12 17:23:05.439  2969  2969 E FingerprintHal: fingerprint_pre_enroll
05-12 17:23:05.445  3215  3215 D BiometricSchedulerOperation: [Finished / destroy]: {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}
05-12 17:23:05.446  3215  3215 V BiometricSchedulerOperation: started: {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}, State: 5
05-12 17:23:05.446  3215  3215 D BiometricScheduler/Fingerprint21: [Finishing] {[15] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintGenerateChallengeClient, proto=10, owner=com.android.settings, cookie=0, requestId=-1, userId=0}, success: true
05-12 17:23:05.474  3215  8362 I ActivityTaskManager: START u0 {cmp=com.android.settings/.biometrics.fingerprint.FingerprintSettings (has extras)} from uid 1000
05-12 17:23:05.492  8160  8160 D SettingsActivity: Switching to fragment com.android.settings.biometrics.fingerprint.FingerprintSettings$FingerprintSettingsFragment
05-12 17:23:05.493  8160  8160 D PrefCtrlListHelper: Could not find Context-only controller for pref: com.android.settings.biometrics.fingerprint.FingerprintUnlockCategoryPreferenceController
05-12 17:23:05.493  8160  8160 W PrefCtrlListHelper: Cannot instantiate controller from reflection: com.android.settings.biometrics.fingerprint.FingerprintUnlockCategoryPreferenceController
05-12 17:23:05.493  8160  8160 D PrefCtrlListHelper: Could not find Context-only controller for pref: com.android.settings.biometrics.fingerprint.FingerprintSettingsRequireScreenOnToAuthPreferenceController
05-12 17:23:05.497  3215  7177 I ActivityTaskManager: START u0 {cmp=com.android.settings/.biometrics.fingerprint.FingerprintEnrollIntroductionInternal (has extras)} from uid 1000
05-12 17:23:05.513  3215  8362 D CoreBackPreview: Window{bf66893 u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintSettings}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@9db68c9, mPriority=0}
05-12 17:23:05.543  8160  8160 E SetupLibrary: [PartnerCustomizationLayout] Attribute sucUsePartnerResource not found in ComponentInfo{com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollIntroductionInternal}
05-12 17:23:05.564  3215  7177 D CoreBackPreview: Window{5d416da u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollIntroductionInternal}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@78c99e8, mPriority=0}
05-12 17:23:05.590  3215  3376 I ActivityTaskManager: Displayed com.android.settings/.biometrics.fingerprint.FingerprintEnrollIntroductionInternal: +115ms
05-12 17:23:09.286  3215  7177 I ActivityTaskManager: START u0 {cmp=com.android.settings/.biometrics.fingerprint.FingerprintEnrollFindSensor (has extras)} from uid 1000
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Added] {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}, new queue size: 1
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Polled] {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}, State: 0
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Started] {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}
05-12 17:23:09.341  3215  3215 D FingerprintUpdateActiveUserClient: Already user: com.android.server.biometrics.sensors.fingerprint.hidl.Fingerprint21$$ExternalSyntheticLambda1@1a6065c, returning
05-12 17:23:09.341  3215  3215 D BiometricSchedulerOperation: [Finished / destroy]: {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}
05-12 17:23:09.341  3215  3215 V BiometricSchedulerOperation: started: {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}, State: 5
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Added] {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}, new queue size: 1
05-12 17:23:09.341  3215  3215 V BiometricScheduler/Fingerprint21: Not idle, current operation: {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}, State: 5
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Finishing] {[16] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintUpdateActiveUserClient, proto=1, owner=android, cookie=0, requestId=-1, userId=0}, success: true
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Polled] {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}, State: 0
05-12 17:23:09.341  3215  3215 D BiometricScheduler/Fingerprint21: [Started] {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}
05-12 17:23:09.341  3215  3215 D BiometricStateCallback: State updated from 0 to 1, client {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}
05-12 17:23:09.344  2969  2969 E FingerprintHal: fingerprint_enroll
05-12 17:23:09.347  3215  4266 D CoreBackPreview: Window{8fe36eb u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@7dffae1, mPriority=0}
05-12 17:23:09.349  2969  2969 D android.hardware.biometrics.fingerprint@2.1-service: onError(8)
05-12 17:23:09.349  2969  2969 E [GF_HAL][FingerprintCore]: [enroll] fingerprint no calibration.
05-12 17:23:09.350  3215  3215 V BiometricSchedulerOperation: started: {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}, State: 2
05-12 17:23:09.350  3215  3215 D BiometricStateCallback: Client finished, state updated to 0, client {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}
05-12 17:23:09.350  3215  3215 D BiometricSchedulerOperation: [Finished / destroy]: {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}
05-12 17:23:09.350  3215  3215 D BiometricScheduler/Fingerprint21: [Finishing] {[17] com.android.server.biometrics.sensors.fingerprint.hidl.FingerprintEnrollClient, proto=2, owner=com.android.settings, cookie=0, requestId=3, userId=0}, success: false
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor.onEnrollmentError(FingerprintEnrollFindSensor.java:339)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at com.android.settings.biometrics.fingerprint.FingerprintEnrollSidecar.access$201(FingerprintEnrollSidecar.java:35)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at com.android.settings.biometrics.fingerprint.FingerprintEnrollSidecar$1.onEnrollmentError(FingerprintEnrollSidecar.java:118)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at com.android.settings.biometrics.fingerprint.FingerprintUpdater$NotifyingEnrollmentCallback.onEnrollmentError(FingerprintUpdater.java:79)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at android.hardware.fingerprint.FingerprintManager.sendErrorResult(FingerprintManager.java:1351)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at android.hardware.fingerprint.FingerprintManager.-$$Nest$msendErrorResult(Unknown Source:0)
05-12 17:23:09.364  8160  8160 E PHH-Enroll:    at android.hardware.fingerprint.FingerprintManager$MyHandler.handleMessage(FingerprintManager.java:1245)
05-12 17:23:09.367  3215  3376 I ActivityTaskManager: Displayed com.android.settings/.biometrics.fingerprint.FingerprintEnrollFindSensor: +81ms
05-12 17:23:09.378  3215  3808 D CoreBackPreview: Window{525be8c u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@be706b6, mPriority=0}
05-12 17:23:10.588  3215  3808 D CoreBackPreview: Window{525be8c u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor}: Setting back callback null
05-12 17:23:10.596  3215  3808 W InputManager-JNI: Input channel object '525be8c com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor (client)' was disposed without first being removed with the input manager!
05-12 17:23:10.678  3215  3808 W ActivityTaskManager: Duplicate finish request for r=ActivityRecord{270892e u0 com.android.settings/.biometrics.fingerprint.FingerprintEnrollFindSensor} t37 f}}
05-12 17:23:10.698  3215  8362 D CoreBackPreview: Window{5d416da u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollIntroductionInternal}: Setting back callback null
05-12 17:23:10.699  3215  3808 W InputManager-JNI: Input channel object '5d416da com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollIntroductionInternal (client)' was disposed without first being removed with the input manager!
05-12 17:23:11.189  3215  8362 W ActivityTaskManager: Duplicate finish request for r=ActivityRecord{270892e u0 com.android.settings/.biometrics.fingerprint.FingerprintEnrollFindSensor} t37 f}}
05-12 17:23:11.193  3215  3808 D CoreBackPreview: Window{8fe36eb u0 com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor}: Setting back callback null
05-12 17:23:11.194  3215  3808 W InputManager-JNI: Input channel object '8fe36eb com.android.settings/com.android.settings.biometrics.fingerprint.FingerprintEnrollFindSensor (client)' was disposed without first being removed with the input manager!
05-12 17:23:11.196  3215  8362 D ActivityTaskManager: Remove task fragment: removeLastChild ActivityRecord{270892e u0 com.android.settings/.biometrics.fingerprint.FingerprintEnrollFindSensor} t-1 f}}

Note: 05-12 17:23:09.349 2969 2969 E [GF_HAL][FingerprintCore]: [enroll] fingerprint no calibration. - this isn't true. If I flash back to the OEM system.img the sensor works perfectly so this isn't a calibration issue.