xcode 使用自动填充功能更改密码

wd2eg0qa  于 2023-01-06  发布在  其他
关注(0)|答案(2)|浏览(135)

自动填充/保存密码功能已经实现并在登录视图上工作,我想有一个更改密码功能,它也支持自动填充/strong密码建议,并替换钥匙链中的旧密码。
我已经尝试了几乎所有的方法,但操作系统没有更换密码,也没有显示任何确认更改的警报。在视图上有3个输入:oldPassword,newPassword,confirmPassword.需要的内容类型和属性都设置好了(.password,.newPassword,.newPassword),在viewWillDisappere上我清空了所有字段.我还设置了一个输入字段,预先填好用户名,并将其隐藏起来,只是为了确保苹果的启发式算法能够识别出交易.
自动填充可以在oldPassword上工作(从keychain填充当前密码),强密码建议也可以工作,填充newPassword和confirmPassword输入。但是如果我更改密码并从视图中导航,什么也没有发生。
我错过了什么吗?我的头已经从这个“惊人的”启发式功能旋转,所以我不能告诉操作系统什么时候我需要使用这个功能或以某种方式触发它。调试也是不可能的。

p1tboqfb

p1tboqfb1#

我找到了一个变通办法,但它有点粗略,所以我仍然好奇正确的解决方案。
在后端更改密码确认后,我将newPassword的文本复制到oldPassword的输入中。之后我调用popViewController/whatever关闭视图,并在viewDidDisappearse中清除所有字段。使用此技巧,操作系统会显示更新keychain中密码的警报。如果您选择使用强密码建议,它会在没有任何通知的情况下更新密码。

qnyhuwrf

qnyhuwrf2#

问题是你隐藏了用户名UITextField。用户名UITextField可以是只读的,但是它必须在你的视图中可见,这样启发式算法才能正常工作。
14:30见https://developer.apple.com/videos/play/wwdc2018/204/

相关问题