Android FingerPrint isHardwareDetected не работает

У меня проблемы с Samsung S5 и Huawei M2.

У моего Huawei нет API 23, но у моего S5 есть Android 6.0 и fingerPrint.

public static boolean checkHaveFingerHardware(Context ctx) {
    FingerprintManager fingerprintManager;
    if (Build.VERSION.SDK_INT < Global.API23) {
        AppLogger.w("API < 23");
        return false;
    } else {
        fingerprintManager = (FingerprintManager) ctx.getSystemService(Service.FINGERPRINT_SERVICE);
    }
    if (!fingerprintManager.isHardwareDetected()) {
        AppLogger.w("Not FingerPrint");
        return false;
    }
    return true;
}

1 ответ

Решение

Для API Android Fingerprint обязательно, чтобы версия Android была равной или превосходящей Android 6.

Похоже, что это общая проблема с несколькими устройствами Samsung, такими как Galaxy S5 под управлением Android 6+:

Android M FingerprintManager.isHardwareDetected () возвращает false на Samsung Galaxy S5

FingerPrint API isHardwareDetected всегда возвращает false

Единственное решение заключается в том, что вы можете реализовать Samsung Pass Api для этих устройств:

http://developer.samsung.com/galaxy/pass

http://img-developer.samsung.com/onlinedocs/sms/pass/index.html

Другие вопросы по тегам