Fixed a bug where the ConfirmDeviceCredentials activity was shown twice.

When rotating the ConfirmDeviceCredentials Activity, it was launched again after
solving the challenge.

Bug: 23937676
Change-Id: Ic0852448f498c79d5448c72cbc31bb55d9bfeddb
This commit is contained in:
Selim Cinek
2015-09-11 17:06:29 -07:00
parent f33098eaa0
commit 2547ea5b58

View File

@@ -16,7 +16,6 @@
package com.android.settings.fingerprint; package com.android.settings.fingerprint;
import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.hardware.fingerprint.FingerprintManager; import android.hardware.fingerprint.FingerprintManager;
import android.os.Bundle; import android.os.Bundle;
@@ -32,15 +31,19 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase {
private static final int CONFIRM_REQUEST = 1; private static final int CONFIRM_REQUEST = 1;
private static final int ENROLLING = 2; private static final int ENROLLING = 2;
public static final String EXTRA_KEY_LAUNCHED_CONFIRM = "launched_confirm_lock";
private FingerprintLocationAnimationView mAnimation; private FingerprintLocationAnimationView mAnimation;
private boolean mLaunchedConfirmLock;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.fingerprint_enroll_find_sensor); setContentView(R.layout.fingerprint_enroll_find_sensor);
setHeaderText(R.string.security_settings_fingerprint_enroll_find_sensor_title); setHeaderText(R.string.security_settings_fingerprint_enroll_find_sensor_title);
if (mToken == null) { mLaunchedConfirmLock = savedInstanceState != null && savedInstanceState.getBoolean(
EXTRA_KEY_LAUNCHED_CONFIRM);
if (mToken == null && !mLaunchedConfirmLock) {
launchConfirmLock(); launchConfirmLock();
} }
mAnimation = (FingerprintLocationAnimationView) findViewById( mAnimation = (FingerprintLocationAnimationView) findViewById(
@@ -59,6 +62,12 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase {
mAnimation.stopAnimation(); mAnimation.stopAnimation();
} }
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putBoolean(EXTRA_KEY_LAUNCHED_CONFIRM, mLaunchedConfirmLock);
}
@Override @Override
protected void onNextButtonClick() { protected void onNextButtonClick() {
startActivityForResult(getEnrollingIntent(), ENROLLING); startActivityForResult(getEnrollingIntent(), ENROLLING);
@@ -104,6 +113,8 @@ public class FingerprintEnrollFindSensor extends FingerprintEnrollBase {
// This shouldn't happen, as we should only end up at this step if a lock thingy is // This shouldn't happen, as we should only end up at this step if a lock thingy is
// already set. // already set.
finish(); finish();
} else {
mLaunchedConfirmLock = true;
} }
} }