Files
app_Settings/src/com/android/settings/biometrics/fingerprint/FingerprintFeatureProvider.java
Shawn Lin e2051d50e3 [Biometric Onboarding & Edu] Update fingerprint settings page
- Added a feature provider for fingerprint settings page in
  FingerprintFeatureProvider for customization
- When no fingerprint enrolled, disabled the settings buttons instead of
  hiding them.
- Update new UX style for add fingerprint button

Bug: 370940762
Test: manual - 1. Enroll a fingerprint
               2. Go Fingerprint Settings page and remove fingerprint
	       3. Enroll fingerprint again
Test: atest FingerprintSettingsFragmentTest
Flag: com.android.settings.flags.biometrics_onboarding_education

Change-Id: Ibe47bb241c4b20e8e0c5b4a9172aef90bf3727ea
2025-02-05 10:34:28 +00:00

84 lines
2.8 KiB
Java

/*
* Copyright (C) 2023 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.biometrics.fingerprint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.android.settings.biometrics.fingerprint.feature.FingerprintExtPreferencesProvider;
import com.android.settings.biometrics.fingerprint.feature.SfpsEnrollmentFeature;
import com.android.settings.biometrics.fingerprint.feature.SfpsRestToUnlockFeature;
public interface FingerprintFeatureProvider {
/**
* Gets the feature implementation of SFPS enrollment.
* @return the feature implementation
*/
SfpsEnrollmentFeature getSfpsEnrollmentFeature();
/**
* Gets calibrator for udfps pre-enroll
* @param appContext application context
* @param activitySavedInstanceState activity savedInstanceState
* @param activityIntent activity intent
*/
@Nullable
default UdfpsEnrollCalibrator getUdfpsEnrollCalibrator(@NonNull Context appContext,
@Nullable Bundle activitySavedInstanceState, @Nullable Intent activityIntent) {
return null;
}
/**
* Gets the feature implementation of SFPS rest to unlock.
* @param context context
* @return the feature implementation
*/
SfpsRestToUnlockFeature getSfpsRestToUnlockFeature(@NonNull Context context);
/**
* Gets the provider for current fingerprint enrollment activity classes
* @return the provider
*/
@NonNull
default FingerprintEnrollActivityClassProvider getEnrollActivityClassProvider(@NonNull Context context) {
return FingerprintEnrollActivityClassProvider.getInstance();
}
/**
* Gets new Preferences in Fingerprint Settings
*/
@NonNull
default FingerprintExtPreferencesProvider getExtPreferenceProvider(
@NonNull Context context
) {
return new FingerprintExtPreferencesProvider();
}
/**
* Gets the feature provider for FingerprintSettings page
* @return the provider
*/
@NonNull
default FingerprintSettingsFeatureProvider getFingerprintSettingsFeatureProvider() {
return FingerprintSettingsFeatureProvider.getInstance();
}
}