微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么CompleteWithAuthorization总是返回ASAuthorizationAppleIDCredential作为凭据?

如何解决为什么CompleteWithAuthorization总是返回ASAuthorizationAppleIDCredential作为凭据?

我正在尝试使用Apple进行登录,并且在创建新用户时似乎可以正常使用。初始登录后,委托正确返回一个新用户,并调用if语句块。但是,如果我再次运行该应用程序并触发我的Apple登录,则会正确显示“您是否要使用您的Apple ID登录(应用程序名称)”弹出窗口。点击继续并登录后,回叫为再次使用if语句触发,创建了一个新用户,但是使用了零凭据。这正常吗?我应该只使用Apple首次创建用户时返回的标识符登录吗?

func authorizationController(controller: ASAuthorizationController,didCompleteWithAuthorization authorization: ASAuthorization) {
        print(authorization.credential)
        if let appleIDCredential = authorization.credential as? ASAuthorizationAppleIDCredential {
            print("created a new user")
            let userID = appleIDCredential.user
            let fullName = appleIDCredential.fullName
            let email = appleIDCredential.email
        } else if let passwordCredential = authorization.credential as? ASPasswordCredential {
            print("logged in with \(username)")
            let username = passwordCredential.user
            let password = passwordCredential.password
        }```

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。