diff --git a/src/com/android/settings/fingerprint/FingerprintEnrollEnrolling.java b/src/com/android/settings/fingerprint/FingerprintEnrollEnrolling.java index b8ac0404f1b..5d4edbd4c40 100644 --- a/src/com/android/settings/fingerprint/FingerprintEnrollEnrolling.java +++ b/src/com/android/settings/fingerprint/FingerprintEnrollEnrolling.java @@ -214,9 +214,9 @@ public class FingerprintEnrollEnrolling extends FingerprintEnrollBase private void launchFinish(byte[] token) { Intent intent = getFinishIntent(); + intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN, token); startActivity(intent); - setResult(RESULT_FINISHED); finish(); } diff --git a/src/com/android/settings/fingerprint/FingerprintEnrollFindSensor.java b/src/com/android/settings/fingerprint/FingerprintEnrollFindSensor.java index 552ed7108eb..1d9d1c53eb6 100644 --- a/src/com/android/settings/fingerprint/FingerprintEnrollFindSensor.java +++ b/src/com/android/settings/fingerprint/FingerprintEnrollFindSensor.java @@ -16,6 +16,7 @@ package com.android.settings.fingerprint; +import android.content.Context; import android.content.Intent; import android.hardware.fingerprint.FingerprintManager; import android.os.Bundle; @@ -75,6 +76,14 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase { if (resultCode == RESULT_FINISHED) { setResult(RESULT_FINISHED); finish(); + } else { + FingerprintManager fpm = getSystemService(FingerprintManager.class); + int enrolled = fpm.getEnrolledFingerprints().size(); + int max = getResources().getInteger( + com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser); + if (enrolled >= max) { + finish(); + } } } else { super.onActivityResult(requestCode, resultCode, data); diff --git a/src/com/android/settings/fingerprint/FingerprintEnrollFinish.java b/src/com/android/settings/fingerprint/FingerprintEnrollFinish.java index 7e4d656dd36..7ce340d21be 100644 --- a/src/com/android/settings/fingerprint/FingerprintEnrollFinish.java +++ b/src/com/android/settings/fingerprint/FingerprintEnrollFinish.java @@ -55,6 +55,7 @@ public class FingerprintEnrollFinish extends FingerprintEnrollBase { @Override protected void onNextButtonClick() { + setResult(RESULT_FINISHED); finish(); }