Export FingerprintEnrollIntroduction activity under the permission
USE_FINGERPRINT so that setup wizard can start it.
Bug:
21695577
Change-Id: If466c6e484a4aa0c10382cfedab0aad10ae26702
<activity android:name=".fingerprint.FingerprintEnrollFindSensor" android:exported="false"/>
<activity android:name=".fingerprint.FingerprintEnrollEnrolling" android:exported="false"/>
<activity android:name=".fingerprint.FingerprintEnrollFinish" android:exported="false"/>
- <activity android:name=".fingerprint.FingerprintEnrollIntroduction" android:exported="false"/>
+ <activity android:name=".fingerprint.FingerprintEnrollIntroduction"
+ android:exported="true"
+ android:permission="android.permission.MANAGE_FINGERPRINT">
+ <intent-filter>
+ <action android:name="android.settings.FINGERPRINT_SETUP" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
<!-- Note this must not be exported since it returns the password in the intent -->
<activity android:name="ConfirmLockPattern$InternalActivity"
final List<Fingerprint> items = fpm.getEnrolledFingerprints();
final int fingerprintCount = items != null ? items.size() : 0;
final String clazz;
- boolean hasPassword = mChooseLockSettingsHelper.utils().getActivePasswordQuality(
- MY_USER_ID)
- != DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
if (fingerprintCount > 0) {
fingerprintPreference.setSummary(getResources().getQuantityString(
R.plurals.security_settings_fingerprint_preference_summary,
clazz = FingerprintSettings.class.getName();
} else {
clazz = FingerprintEnrollIntroduction.class.getName();
- intent.putExtra(FingerprintEnrollIntroduction.EXTRA_HAS_PASSWORD, hasPassword);
}
intent.setClassName("com.android.settings", clazz);
fingerprintPreference.setIntent(intent);
package com.android.settings.fingerprint;
+import android.app.admin.DevicePolicyManager;
import android.content.Intent;
import android.os.Bundle;
+import android.os.UserHandle;
import android.view.View;
+import com.android.settings.ChooseLockSettingsHelper;
import com.android.settings.HelpUtils;
import com.android.settings.R;
*/
public class FingerprintEnrollIntroduction extends FingerprintEnrollBase {
- public static final String EXTRA_HAS_PASSWORD = "fp_existing_password";
private boolean mHasPassword;
@Override
setHeaderText(R.string.security_settings_fingerprint_enroll_introduction_title);
findViewById(R.id.cancel_button).setOnClickListener(this);
findViewById(R.id.learn_more_button).setOnClickListener(this);
- mHasPassword = getIntent().getBooleanExtra(EXTRA_HAS_PASSWORD, false);
+ final double passwordQuality = new ChooseLockSettingsHelper(this).utils()
+ .getActivePasswordQuality(UserHandle.myUserId());
+ mHasPassword = passwordQuality != DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
}
@Override