我在密码自动填写要求后面有一个示例HTML表单。在没有应用程序的情况下导航到网页时,使用内置的Safari应用程序,登录和注册表单的本机密码AutoFill对话框正确显示:

但是,当在应用程序中查看时,相同的流不会在登录或注册提交中触发对话框。它只是删除登录/注册屏幕,没有任何错误。
这就是我的视图控制器的样子:
class ViewController: UIViewController {
@IBAction func didTapLoginButton() {
let session = ASWebAuthenticationSession(
url: URL(string: "https://example.com/login.html")!,
callbackURLScheme: "customscheme") {
print($0, $1)
}
session.prefersEphemeralWebBrowserSession = true
session.presentationContextProvider = self
session.start()
}
}
extension ViewController: ASWebAuthenticationPresentationContextProviding {
func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
view.window!
}
}有没有办法让密码AutoFill通过ASWebAuthenticationSession与移动应用程序协同工作?我也尝试过SFSafariViewController,但同样的问题。我有一个示例iOS应用程序。任何帮助或经验都是非常感谢的!
发布于 2020-12-05 11:21:54
经过长时间的研究后,我找到的唯一有效和干净的解决方案是,按照建议的这里添加了一个post登录页面。这样,保存凭据提示就不会被忽略。
不幸的是,我没有从iOS端找到任何解决方案,这将是非常感谢的,因为在我的例子中,由于项目限制,我无法更改服务器端。
https://stackoverflow.com/questions/62008102
复制相似问题