FingerprintEnrollFinish.java revision 1b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024
15ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi/* 25ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * Copyright (C) 2015 The Android Open Source Project 35ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * 45ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * Licensed under the Apache License, Version 2.0 (the "License"); 55ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * you may not use this file except in compliance with the License. 65ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * You may obtain a copy of the License at 75ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * 85ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * http://www.apache.org/licenses/LICENSE-2.0 95ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * 105ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * Unless required by applicable law or agreed to in writing, software 115ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * distributed under the License is distributed on an "AS IS" BASIS, 125ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * See the License for the specific language governing permissions and 145ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * limitations under the License 155ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi */ 165ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 175ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggipackage com.android.settings.fingerprint; 185ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 195adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport android.content.Context; 205f8d7dbe52a7fe93fd8c8a224776914b56e12707Maurice Lamimport android.content.Intent; 215adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport android.hardware.fingerprint.Fingerprint; 225adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport android.hardware.fingerprint.FingerprintManager; 235ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggiimport android.os.Bundle; 245adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport android.preference.Preference; 255ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggiimport android.view.View; 265adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport android.widget.Button; 275ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 281b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wrenimport com.android.internal.logging.MetricsLogger; 295ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggiimport com.android.settings.R; 305adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport com.android.settings.fingerprint.FingerprintSettings.FingerprintPreference; 315adada6083c1fb5e520e3044698b03ee29772dabJim Miller 325adada6083c1fb5e520e3044698b03ee29772dabJim Millerimport java.util.List; 335ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 345ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi/** 355ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi * Activity which concludes fingerprint enrollment. 365ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi */ 375ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggipublic class FingerprintEnrollFinish extends FingerprintEnrollBase { 385ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 395ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi @Override 405ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi protected void onCreate(Bundle savedInstanceState) { 415ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi super.onCreate(savedInstanceState); 425ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi setContentView(R.layout.fingerprint_enroll_finish); 435ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi setHeaderText(R.string.security_settings_fingerprint_enroll_finish_title); 445adada6083c1fb5e520e3044698b03ee29772dabJim Miller Button addButton = (Button) findViewById(R.id.add_another_button); 455adada6083c1fb5e520e3044698b03ee29772dabJim Miller 465adada6083c1fb5e520e3044698b03ee29772dabJim Miller FingerprintManager fpm = (FingerprintManager) getSystemService(Context.FINGERPRINT_SERVICE); 475adada6083c1fb5e520e3044698b03ee29772dabJim Miller int enrolled = fpm.getEnrolledFingerprints().size(); 485adada6083c1fb5e520e3044698b03ee29772dabJim Miller int max = getResources().getInteger( 495adada6083c1fb5e520e3044698b03ee29772dabJim Miller com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser); 505adada6083c1fb5e520e3044698b03ee29772dabJim Miller if (enrolled >= max) { 515adada6083c1fb5e520e3044698b03ee29772dabJim Miller /* Don't show "Add" button if too many fingerprints already added */ 525adada6083c1fb5e520e3044698b03ee29772dabJim Miller addButton.setVisibility(View.INVISIBLE); 535adada6083c1fb5e520e3044698b03ee29772dabJim Miller } else { 545adada6083c1fb5e520e3044698b03ee29772dabJim Miller addButton.setOnClickListener(this); 555adada6083c1fb5e520e3044698b03ee29772dabJim Miller } 565ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi } 575ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 585ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi @Override 595ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi protected void onNextButtonClick() { 60da433902d41baec2c1fdbe35ad853d2d7ce7bc1dMaurice Lam setResult(RESULT_FINISHED); 615ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi finish(); 625ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi } 635ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi 645ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi @Override 655ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi public void onClick(View v) { 665ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi if (v.getId() == R.id.add_another_button) { 675f8d7dbe52a7fe93fd8c8a224776914b56e12707Maurice Lam final Intent intent = getEnrollingIntent(); 685f8d7dbe52a7fe93fd8c8a224776914b56e12707Maurice Lam intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); 695f8d7dbe52a7fe93fd8c8a224776914b56e12707Maurice Lam startActivity(intent); 708d1f9c9be50439fa3f5f50fbe473e43ba6b77eb6Maurice Lam finish(); 715ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi } 725ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi super.onClick(v); 735ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi } 741b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren 751b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren @Override 761b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren protected int getMetricsCategory() { 771b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren return MetricsLogger.FINGERPRINT_ENROLL_FINISH; 781b8d5ffb47b674dd67ae6d56baa9ab3f42c8c024Chris Wren } 795ad75f07b1861b802b75c720830db260b4f93417Jorim Jaggi} 80