如何在 Android Samsung Galaxy Note 4 中检测指纹读取器?
Posted
技术标签:
【中文标题】如何在 Android Samsung Galaxy Note 4 中检测指纹读取器?【英文标题】:How to detect a fingerprint reader in Android Samsung Galaxy Note 4? 【发布时间】:2016-10-10 18:33:28 【问题描述】:我正在尝试将 FP 身份验证添加到我的应用程序中,由于某种原因,它在 Note 4 上不起作用,而在其他三星设备(例如 Galaxy S7)以及 Nexus 设备上却可以正常工作。 我确实在 Note 4 上安装了 Marshmallow 6.0.1。以下是我尝试检测 FP 阅读器的两种方法:
方法一:
FingerprintManager mFingerprintManager = context.getSystemService(FingerprintManager.class);
return mFingerprintManager.isHardwareDetected()
&& mFingerprintManager.hasEnrolledFingerprints();
方法 #2:
return context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT);
两者都返回 FALSE。
请注意,我有其他应用程序在此设备上使用 FP 阅读器没有问题。如果以上返回 False,我可以利用另一个 FP API 吗?我会用它作为后备。
【问题讨论】:
上下文从何而来?你的 mFingerprintManager !=null 吗? 上下文来自 getActivity() 并且 m.FingerprintManager 不为空。检测设备和注册手指的方法调用返回为 False。 【参考方案1】:Samsung S5 和 Note 4 与 android 的 Fingerscan API 不兼容。 FingerprintManger.isHardwareDetected() 总是返回 false。在 S6、S6Edge、S7 和 S7Edge 上运行良好。
【讨论】:
以上是关于如何在 Android Samsung Galaxy Note 4 中检测指纹读取器?的主要内容,如果未能解决你的问题,请参考以下文章
tgkill - Android 8.0 Samsung S8 上的本机错误
BroadcastReceiver,用于在基于 Samsung-Android 的智能手机上接收短信
输入表单字段上的页面刷新触摸事件 - Android,Samsung
Context.startForegroundService() 仅在 Android 11 Samsung 设备上没有调用 Service.startForeground()