我正在使用Apple实施Sign in,并注意到返回的email和fullName属性ASAuthorizationAppleIDCredential仅在此Apple ID的第一个Sign-In上填写。在所有后续登录中,这些属性均为零。
这是iOS 13上的错误还是预期的行为?
这是我用来启动请求的代码:
@available(iOS 13.0, *)
dynamic private func signInWithAppleClicked() {
let request = ASAuthorizationAppleIDProvider().createRequest()
request.requestedScopes = [.fullName, .email]
let controller = ASAuthorizationController(authorizationRequests: [request])
controller.delegate = self
controller.presentationContextProvider = self
controller.performRequests()
}
Run Code Online (Sandbox Code Playgroud)
我正在此委托方法中收到证书:
public func authorizationController(controller: ASAuthorizationController, didCompleteWithAuthorization authorization: ASAuthorization) {
guard let credential = authorization.credential as? ASAuthorizationAppleIDCredential else { return }
let userIdentifier = credential.user
let token = credential.identityToken
let authCode = credential.authorizationCode
let realUserStatus = credential.realUserStatus
let mail = …Run Code Online (Sandbox Code Playgroud)