Android 用于检测设备是否具有指纹硬件的代码
我正在尝试在我的应用程序中添加一个小部分,用于检测android设备是否具有内置指纹硬件。有两个特定页面分别讨论了该主题: 及 但是他们都没有给我一个有效的解决方案,我正在寻找一个可以在14年前的API上工作的东西Android 用于检测设备是否具有指纹硬件的代码,android,fingerprint,detect,Android,Fingerprint,Detect,我正在尝试在我的应用程序中添加一个小部分,用于检测android设备是否具有内置指纹硬件。有两个特定页面分别讨论了该主题: 及 但是他们都没有给我一个有效的解决方案,我正在寻找一个可以在14年前的API上工作的东西 任何帮助都将不胜感激 您必须在FingerprintManager类上使用方法isHardwareDetected 确定指纹硬件是否存在并正常工作。如果硬件存在且功能正常,则返回true,否则返回false // Check if we're running on Andro
任何帮助都将不胜感激 您必须在
FingerprintManager
类上使用方法isHardwareDetected
确定指纹硬件是否存在并正常工作。如果硬件存在且功能正常,则返回true,否则返回false
// Check if we're running on Android 6.0 (M) or higher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//Fingerprint API only available on from Android 6.0 (M)
FingerprintManager fingerprintManager = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
if (!fingerprintManager.isHardwareDetected()) {
// Device doesn't support fingerprint authentication
} else if (!fingerprintManager.hasEnrolledFingerprints()) {
// User hasn't enrolled any fingerprints to authenticate with
} else {
// Everything is ready for fingerprint authentication
}
}
不要忘记在中添加访问指纹功能的权限
AndroidManifest:
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
并使用FingerprintManagerCompat类,如下所示:
FingerprintManagerCompat fingerprintManagerCompat = FingerprintManagerCompat.from(context);
if (!fingerprintManagerCompat.isHardwareDetected()) {
// Device doesn't support fingerprint authentication
} else if (!fingerprintManagerCompat.hasEnrolledFingerprints()) {
// User hasn't enrolled any fingerprints to authenticate with
} else {
// Everything is ready for fingerprint authentication
}
您必须在
FingerprintManager
类上使用方法ishardwaredeteced
确定指纹硬件是否存在并正常工作。如果硬件存在且功能正常,则返回true,否则返回false
// Check if we're running on Android 6.0 (M) or higher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//Fingerprint API only available on from Android 6.0 (M)
FingerprintManager fingerprintManager = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
if (!fingerprintManager.isHardwareDetected()) {
// Device doesn't support fingerprint authentication
} else if (!fingerprintManager.hasEnrolledFingerprints()) {
// User hasn't enrolled any fingerprints to authenticate with
} else {
// Everything is ready for fingerprint authentication
}
}
不要忘记在中添加访问指纹功能的权限
AndroidManifest:
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
并使用FingerprintManagerCompat类,如下所示:
FingerprintManagerCompat fingerprintManagerCompat = FingerprintManagerCompat.from(context);
if (!fingerprintManagerCompat.isHardwareDetected()) {
// Device doesn't support fingerprint authentication
} else if (!fingerprintManagerCompat.hasEnrolledFingerprints()) {
// User hasn't enrolled any fingerprints to authenticate with
} else {
// Everything is ready for fingerprint authentication
}
我相信在旧版本的安卓系统中没有官方的指纹API可供应用程序使用。您可以检查API版本是否高于23,如果不是,则该设备没有可供使用的指纹传感器。我相信旧版本的Android中没有可供应用程序使用的官方指纹API。您可以检查API版本是否高于23,如果不是,则设备没有可以使用的指纹传感器。在清单文件中添加指纹权限并添加此代码以检测指纹硬件,请记住,这将仅在从电话设置启用指纹时检测
在清单文件中添加指纹权限并添加此代码以检测指纹硬件,请记住,这将仅在通过电话设置启用指纹时检测
没用。我为每个条件添加了一些toAST消息,并且没有任何事情发生在设备设置的指纹上,否则这个代码将无法检测指纹硬件,这是限制,如果指纹不能在设置中启用,那么Android将考虑没有指纹硬件的设备不起作用。我为每个条件添加了一些toAST消息,没有任何事情发生在设备设置的指纹上,否则这个代码就不会检测到指纹硬件,如果指纹没有在设置中启用,那么Android将考虑没有指纹硬件的设备。