Touch ID的应用

关于Touch ID的构思

  • 突出写作这一方面,而非浏览。应用打开直接应该是编辑页面。这是我们的HomeVC。所以在启动应用时不需要验证Touch ID。
  • 左滑或者右滑来查看近期日记时,需启动Touch ID验证。
  • 另:从编辑页面进入列表时,需启动Touch ID验证。
  • 双击Home键之后,想做模糊效果(??)。
  • 设置合适的时间,如果应用在ResignActive之后停留时间超过特定时间,则认为用户此次编辑完毕。再进入应用时,进入HomeVC,不验证Touch ID。
  • 如果应用在ResignActive之后的时间不久,则认为用户仍继续编辑此篇日记。这时在应用BecomeActive时验证Touch ID。
  • 那么问题来了,就要既在不同的VC切换时根据将要进入的页面判断是否验证Touch ID,又要在App不同的状态切换时,根据用户是否继续编辑判断是否验证Touch ID。

简单实现Touch ID验证

应用实现Touch ID,需要添加LocalAuthentication.framework,并且在需要使用的文件中添加相应的头文件。

  • 创建对象
LAContext *context = [[LAContext alloc] init];
  • 判断设备是否支持Touch ID
[context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]
  • 支持Touch ID,开始验证
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
          localizedReason:result
                    reply:^(BOOL success, NSError * _Nullable error) {}];
  • 验证失败时,可根据返回值的不同来区分验证失败的原因
    好多啊,.h文件都有说明,不写了。
  • 不支持Touch ID,也有不同的返回值可区分状态

验证Touch ID的具体实现方式

  • 可以实现一个View或者VC,需要验证时弹出,验证后关闭
  • 可以直接在需要验证的页面,直接弹出验证
  • 在应用状态切换时和在页面之间切换时
  • 好吧其实具体的也没有讨论好

大神不在身边指导,心好方~

你可能感兴趣的:(Touch ID的应用)