omadahealth / LolliPin

A Material design Android pincode library. Supports Fingerprint.
MIT License
1.61k stars 425 forks source link

java.lang.IllegalStateException inside KeymasterUtils.addUserAuthArgs #174

Open Vojtas87 opened 6 years ago

Vojtas87 commented 6 years ago

Hello,

I received this crash report in my app (Android 7.0, MIX_2):

`java.lang.IllegalStateException android.security.keystore.KeymasterUtils.addUserAuthArgs

java.lang.RuntimeException: Unable to resume activity {CustomPinActivity}: java.lang.RuntimeException: java.security.InvalidAlgorithmParameterException: java.lang.IllegalStateException: At least one fingerprint must be enrolled to create keys requiring user authentication for every use at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3514) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3554) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2795) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1527) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loop(Looper.java:203) at android.app.ActivityThread.main(ActivityThread.java:6255) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: java.lang.RuntimeException: java.security.InvalidAlgorithmParameterException: java.lang.IllegalStateException: At least one fingerprint must be enrolled to create keys requiring user authentication for every use at com.github.omadahealth.lollipin.lib.managers.FingerprintUiHelper.createKey(FingerprintUiHelper.java:277) at com.github.omadahealth.lollipin.lib.managers.FingerprintUiHelper.initCipher(FingerprintUiHelper.java:241) at com.github.omadahealth.lollipin.lib.managers.FingerprintUiHelper.startListening(FingerprintUiHelper.java:140) at com.github.omadahealth.lollipin.lib.managers.AppLockActivity.initLayoutForFingerprint(AppLockActivity.java:151) at com.github.omadahealth.lollipin.lib.managers.AppLockActivity.onResume(AppLockActivity.java:84) at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1269) at android.app.Activity.performResume(Activity.java:6791) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3485) ... 10 more Caused by: java.security.InvalidAlgorithmParameterException: java.lang.IllegalStateException: At least one fingerprint must be enrolled to create keys requiring user authentication for every use at android.security.keystore.AndroidKeyStoreKeyGeneratorSpi.engineInit(AndroidKeyStoreKeyGeneratorSpi.java:240) at android.security.keystore.AndroidKeyStoreKeyGeneratorSpi$AES.engineInit(AndroidKeyStoreKeyGeneratorSpi.java:53) at javax.crypto.KeyGenerator.init(KeyGenerator.java:487) at javax.crypto.KeyGenerator.init(KeyGenerator.java:470) at com.github.omadahealth.lollipin.lib.managers.FingerprintUiHelper.createKey(FingerprintUiHelper.java:266) ... 17 more Caused by: java.lang.IllegalStateException: At least one fingerprint must be enrolled to create keys requiring user authentication for every use at android.security.keystore.KeymasterUtils.addUserAuthArgs(KeymasterUtils.java:117) at android.security.keystore.AndroidKeyStoreKeyGeneratorSpi.engineInit(AndroidKeyStoreKeyGeneratorSpi.java:234) ... 21 more`

Could you take a look at this, please?

Thank you in advance.