确认应用程序实现了Apple登录的规则和指南。请参考 Apple的开发人员文档以确保您的应用程序遵循 登录规则和 Login and Security Guidelines 。
确认您的应用程序有权访问用户的Apple ID。您需要使用Authorization Services处理这些请求。这可能需要申请“Sign In with Apple”授权,并配置Apple ID域。
确认您的应用程序在User-Agent字符串中正确标识其使用的WebView(如果适用)。例如:Mozilla/5.0 (iPhone; CPU iPhone OS 11_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15G77 Safari/604.1
确认您的应用程序已在info.plist文件中正确声明了相关的URLScheme。这个URL Scheme代表了应用程序的客户端ID。配置方法可以参考 Apple官方文档。
确认您的应用程序在处理身份验证请求时正确定义了自己的认证上下文。总的来说,您应该使用ASAuthorizationAppleIDRequest和ASAuthorizationPasswordRequest类来处理请求,并使用ASAuthorizationController类来管理授权流程及操作。
确认您的应用程序正确处理所有相关错误。您应该在ASAuthorizationControllerDelegate并实现其特定于错误的协议方法中处理错误。
如果您的应用程序使用相同的Apple ID注册了多个服务,则确保它们都在同一个开发者账户下进行注册。
最后,如果您的应用程序使用了“Sign in with Apple”作为主要或唯一登录方式,则确保为“非Sign in with Apple”用户提供其他登录方法。
示例代码:
// 配置信息 let authorizationProvider = ASAuthorizationAppleIDProvider() let request = authorizationProvider.createRequest() request.requestedScopes = [.fullName