允许Face ID许可警报
问题描述:
我的应用程序(运行在iPhone X Simulator Xcode 9.0.1中)询问我是否允许使用Face ID。允许Face ID许可警报
报警称:
Do you want to allow <appName> to use Face ID? This app was designed to use Touch ID and may not fully support Face ID.
我期待我在LocalAuthentication
框架(例如biometryType
),以新的API做了一些改动本来基本上是面部识别工作。
还有什么我需要做的,所以我的应用程序是旨在完全支持Face ID?
答
看起来您需要将NSFaceIDUsageDescription
添加到您的Info.plist
以支持人脸ID。
此外,模拟器警报仅适用于模拟器,没有该Info.plist键,应用程序显然应该在没有它的实际设备上崩溃。
由于这些帅哥帮我学这个 - What is NSFaceIDUsageDescription - Face ID Usage Description Info.plist key?
普罗蒂普:
此前的权限提示,[LAContext canEvaluatePolicy:error:]
回报YES
生物识别设备是否能够它。
iOS将不会提示用户许可,直到第一次调用[LAContext evaluatePolicy:localizedReason:reply:]
。
如果用户确实不授予权限,然后canEvaluatePolicy
未来所有的调用将返回NO
(错误代码= -6“用户已经否认了这个应用程序使用生物测量的。”)。这是一个奇怪的细微差别。
关于错误-6“用户拒绝使用此应用程序的生物特征”您可能有兴趣https://*.com/a/47470580/3172445 –
该应用程序不会崩溃没有'NSFaceIDUsageDescription'测试案例:通过Xcode 9.2和iOS 11.2 SDK的物理iPhone X debbger。结果:我看到以下消息:“此应用旨在使用Touch ID,可能不完全支持Face ID。”并且该应用不会崩溃。 –
@ChrisWoolfe编辑 - 我的错误 - 也许他们解决了iOS 11.2中的行为?我建议你试试11.1或11.0以确保它不会崩溃 – beebcon