Browse Source

fix fingerprint issue

fix_fp
ZhangJun 4 years ago
parent
commit
82d050fff8
  1. 4
      app/src/main/java/com/cobo/cold/Utilities.java
  2. 3
      app/src/main/java/com/cobo/cold/fingerprint/FingerprintKit.java
  3. 8
      app/src/main/java/com/cobo/cold/ui/fragment/setting/MainPreferenceFragment.java

4
app/src/main/java/com/cobo/cold/Utilities.java

@ -213,8 +213,8 @@ public class Utilities {
return Settings.System.getString(context.getContentResolver(), FINGERPRINT_PASSWORD); return Settings.System.getString(context.getContentResolver(), FINGERPRINT_PASSWORD);
} }
public static void setFingerprintPassword(Context context, String pwd) { public static boolean setFingerprintPassword(Context context, String pwd) {
Settings.System.putString(context.getContentResolver(), FINGERPRINT_PASSWORD, pwd); return Settings.System.putString(context.getContentResolver(), FINGERPRINT_PASSWORD, pwd);
} }
public static void setAttackDetected(Context context) { public static void setAttackDetected(Context context) {

3
app/src/main/java/com/cobo/cold/fingerprint/FingerprintKit.java

@ -66,9 +66,10 @@ public class FingerprintKit {
fp = (FingerprintManager) mContext.getSystemService(FINGERPRINT_SERVICE); fp = (FingerprintManager) mContext.getSystemService(FINGERPRINT_SERVICE);
if (!lockPatternUtils.isLockPasswordEnabled(mUserId)) { if (!lockPatternUtils.isLockPasswordEnabled(mUserId)) {
String password = HashUtil.generateRandomPassword(20); String password = HashUtil.generateRandomPassword(20);
if (Utilities.setFingerprintPassword(mContext, password)) {
lockPatternUtils.saveLockPassword(password, null, lockPatternUtils.saveLockPassword(password, null,
DevicePolicyManager.PASSWORD_QUALITY_NUMERIC, mUserId); DevicePolicyManager.PASSWORD_QUALITY_NUMERIC, mUserId);
Utilities.setFingerprintPassword(mContext, password); }
} }
} }

8
app/src/main/java/com/cobo/cold/ui/fragment/setting/MainPreferenceFragment.java

@ -23,6 +23,7 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.graphics.Color; import android.graphics.Color;
import android.hardware.fingerprint.Fingerprint; import android.hardware.fingerprint.Fingerprint;
import android.hardware.fingerprint.FingerprintManager;
import android.os.Bundle; import android.os.Bundle;
import android.os.Looper; import android.os.Looper;
import android.view.Gravity; import android.view.Gravity;
@ -62,6 +63,7 @@ import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import static android.content.Context.FINGERPRINT_SERVICE;
import static com.cobo.cold.Utilities.IS_SETUP_VAULT; import static com.cobo.cold.Utilities.IS_SETUP_VAULT;
import static com.cobo.cold.Utilities.SHARED_PREFERENCES_KEY; import static com.cobo.cold.Utilities.SHARED_PREFERENCES_KEY;
import static com.cobo.cold.ui.fragment.Constants.KEY_NAV_ID; import static com.cobo.cold.ui.fragment.Constants.KEY_NAV_ID;
@ -347,9 +349,8 @@ public class MainPreferenceFragment extends PreferenceFragmentCompat {
} }
public static void removeAllFingerprint(AppCompatActivity activity) { public static void removeAllFingerprint(AppCompatActivity activity) {
if (!FingerprintKit.isHardwareDetected(activity)) { FingerprintManager fm = (FingerprintManager) activity.getSystemService(FINGERPRINT_SERVICE);
return; if (fm.isHardwareDetected() && fm.hasEnrolledFingerprints()) {
}
FingerprintKit fpKit = new FingerprintKit(activity); FingerprintKit fpKit = new FingerprintKit(activity);
if (FingerprintKit.isHardwareDetected(activity)) { if (FingerprintKit.isHardwareDetected(activity)) {
List<Fingerprint> fingerprints = fpKit.getEnrolledFingerprints(); List<Fingerprint> fingerprints = fpKit.getEnrolledFingerprints();
@ -363,6 +364,7 @@ public class MainPreferenceFragment extends PreferenceFragmentCompat {
}); });
} }
} }
}
private void handleChangePassword() { private void handleChangePassword() {
AuthenticateModal.show(mActivity, getString(R.string.password_modal_title), "", password -> { AuthenticateModal.show(mActivity, getString(R.string.password_modal_title), "", password -> {

Loading…
Cancel
Save