我正在尝试添加touchid来解锁自定义键盘扩展的密码保护部分。
当我将此代码添加到自定义键盘扩展的UIInputViewController时,它会生成运行时错误
let authContext = LAContext()
错误是:
2015-09-01 22:18:50.524 AS_Custom_KB [21508:2656253]插件
com.example.AS-Custom-KB.AS-Custom-KeyBoard中断2015-09-01
22:18:50.545 AS_Custom_KB [21508:2656253]插件
com.example.AS-Custom-KB.AS-Custom-KeyBoard无效2015-09-01
22:18:51.635 AS_Custom_KB [21508:2656082]
viewServiceDidTerminateWithError::错误
Domain = _UIViewServiceInterfaceErrorDomain代码= 3“该操作
无法完成。 (_UIViewServiceInterfaceErrorDomain错误3。)“
UserInfo = 0x174273f80 {消息=服务连接中断}
相同的代码在模拟器上可以正常工作,但由于模拟器不支持TouchID,因此无法执行任何操作。该代码还可以在可靠的应用程序中正常运行(而不是自定义键盘扩展名)。
我曾尝试查看LAContext文档,但未找到任何有关为什么可能导致此类错误的信息,或有关无法从扩展中使用它的任何信息。
关于为什么可能会发生这种情况的任何想法,或者如何通过自定义键盘扩展名使它起作用?任何人都可以通过自定义键盘扩展名获得touchid吗?
最佳答案
经过24小时的研发,我找到了自己的答案,我发现答案非常简单且设置合理
在您的RequestsOpenAccess
中设置NSExtensionAttributes
是