使用SFAuthenticationSession或ASWebAuthenticationSession时,每次显示窗口时,当前都会提示用户同意。

在某个时候,用户选择注销,然后再次向其显示UIAlert,要求其同意登录

用户已登录,尝试注销,并提示其同意登录-因此可能会注销

另外,当尝试使用ASWebAuthenticationSession打开需要相同应用程序身份验证的网页时,将显示对话框,并且在使用其他浏览器(如SFSafariViewController)时,将不对用户进行身份验证。

最佳答案

如果您不想显示同意对话框,只需在prefersEphemeralWebBrowserSession对象上将ASWebAuthenticationSession设置为true即可。如果将此属性设置为true,则启动 session 将绕过对话框,但同时也避免了Single Sign On(SSO)。如果您只想使用您的应用程序登录,那很好,但是如果您还有一个支持您的应用程序的网站,则用户需要再次登录。该属性在iOS 13及更高版本中可用。

10-08 05:31