Skip to content

Commit 0d9f821

Browse files
authored
Fix NPE on BiometricPrompt instance (#141)
* update lock * check fragment activity
1 parent 4cea388 commit 0d9f821

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

android/src/main/java/com/hieuvp/fingerprint/ReactNativeFingerprintScannerModule.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public void onAuthenticationSucceeded(@NonNull BiometricPrompt.AuthenticationRes
9494
}
9595
}
9696

97-
public BiometricPrompt getBiometricPrompt(final Promise promise) {
97+
public BiometricPrompt getBiometricPrompt(final FragmentActivity fragmentActivity, final Promise promise) {
9898
// memoize so can be accessed to cancel
9999
if (biometricPrompt != null) {
100100
return biometricPrompt;
@@ -104,7 +104,6 @@ public BiometricPrompt getBiometricPrompt(final Promise promise) {
104104
mReactContext.addLifecycleEventListener(this);
105105

106106
AuthCallback authCallback = new AuthCallback(promise);
107-
FragmentActivity fragmentActivity = (FragmentActivity) getCurrentActivity();
108107
Executor executor = Executors.newSingleThreadExecutor();
109108
biometricPrompt = new BiometricPrompt(
110109
fragmentActivity,
@@ -120,7 +119,11 @@ private void biometricAuthenticate(final String title, final String subtitle, fi
120119
new Runnable() {
121120
@Override
122121
public void run() {
123-
BiometricPrompt bioPrompt = getBiometricPrompt(promise);
122+
FragmentActivity fragmentActivity = (FragmentActivity) mReactContext.getCurrentActivity();
123+
124+
if(fragmentActivity == null) return;
125+
126+
BiometricPrompt bioPrompt = getBiometricPrompt(fragmentActivity, promise);
124127

125128
PromptInfo promptInfo = new BiometricPrompt.PromptInfo.Builder()
126129
.setDeviceCredentialAllowed(false)

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)