diff options
-rw-r--r-- | services/core/java/com/android/server/biometrics/BiometricDanglingReceiver.java | 6 | ||||
-rw-r--r-- | services/tests/servicestests/src/com/android/server/biometrics/BiometricDanglingReceiverTest.java | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/biometrics/BiometricDanglingReceiver.java b/services/core/java/com/android/server/biometrics/BiometricDanglingReceiver.java index 3e8acee26e81..7cf2d3028aef 100644 --- a/services/core/java/com/android/server/biometrics/BiometricDanglingReceiver.java +++ b/services/core/java/com/android/server/biometrics/BiometricDanglingReceiver.java @@ -16,6 +16,7 @@ package com.android.server.biometrics; import static android.content.Intent.ACTION_CLOSE_SYSTEM_DIALOGS; +import static android.content.Intent.FLAG_RECEIVER_FOREGROUND; import android.annotation.NonNull; import android.content.BroadcastReceiver; @@ -63,7 +64,7 @@ public class BiometricDanglingReceiver extends BroadcastReceiver { intentFilter.addAction(ACTION_FACE_RE_ENROLL_LAUNCH); intentFilter.addAction(ACTION_FACE_RE_ENROLL_DISMISS); } - context.registerReceiver(this, intentFilter); + context.registerReceiver(this, intentFilter, Context.RECEIVER_NOT_EXPORTED); } @Override @@ -84,7 +85,8 @@ public class BiometricDanglingReceiver extends BroadcastReceiver { } private void launchBiometricEnrollActivity(Context context, String action) { - context.sendBroadcast(new Intent(ACTION_CLOSE_SYSTEM_DIALOGS)); + context.sendBroadcast( + new Intent(ACTION_CLOSE_SYSTEM_DIALOGS).setFlags(FLAG_RECEIVER_FOREGROUND)); final Intent intent = new Intent(action); intent.setPackage(SETTINGS_PACKAGE); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); diff --git a/services/tests/servicestests/src/com/android/server/biometrics/BiometricDanglingReceiverTest.java b/services/tests/servicestests/src/com/android/server/biometrics/BiometricDanglingReceiverTest.java index 0716a5c5561d..3698d6fb6b76 100644 --- a/services/tests/servicestests/src/com/android/server/biometrics/BiometricDanglingReceiverTest.java +++ b/services/tests/servicestests/src/com/android/server/biometrics/BiometricDanglingReceiverTest.java @@ -26,6 +26,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.NotificationManager; +import android.content.Context; import android.content.Intent; import android.hardware.biometrics.BiometricsProtoEnums; import android.os.UserHandle; @@ -75,13 +76,15 @@ public class BiometricDanglingReceiverTest { @Test public void testFingerprintRegisterReceiver() { initBroadcastReceiver(BiometricsProtoEnums.MODALITY_FINGERPRINT); - verify(mContext).registerReceiver(eq(mBiometricDanglingReceiver), any()); + verify(mContext).registerReceiver(eq(mBiometricDanglingReceiver), any(), + eq(Context.RECEIVER_NOT_EXPORTED)); } @Test public void testFaceRegisterReceiver() { initBroadcastReceiver(BiometricsProtoEnums.MODALITY_FACE); - verify(mContext).registerReceiver(eq(mBiometricDanglingReceiver), any()); + verify(mContext).registerReceiver(eq(mBiometricDanglingReceiver), any(), + eq(Context.RECEIVER_NOT_EXPORTED)); } @Test |