Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift A授权控制器和注册/登录流 上下文_Swift_Apple Sign In_Sign In With Apple - Fatal编程技术网

Swift A授权控制器和注册/登录流 上下文

Swift A授权控制器和注册/登录流 上下文,swift,apple-sign-in,sign-in-with-apple,Swift,Apple Sign In,Sign In With Apple,我的应用程序(Swift代码)的“与苹果注册”流程运行良好 也就是说,当用户第一次访问应用程序时,它会提示他们“使用Apple登录”(因为我使用的是.signUp按钮,所以应该是“注册”),这是第一个屏幕,然后继续提供 使用您的Apple ID“[电子邮件]”为[应用程序]创建帐户 允许用户选择是共享电子邮件还是隐藏电子邮件(使用Apple转发电子邮件地址)。最后,他们被要求输入密码 一切都好 问题 然而,从流量的角度来看,“注册”(即创建帐户)并不是唯一可用的东西 因此,当我们之前已经让用户登

我的应用程序(Swift代码)的“与苹果注册”流程运行良好

也就是说,当用户第一次访问应用程序时,它会提示他们“使用Apple登录”(因为我使用的是.signUp按钮,所以应该是“注册”),这是第一个屏幕,然后继续提供

使用您的Apple ID“[电子邮件]”为[应用程序]创建帐户

允许用户选择是共享电子邮件还是隐藏电子邮件(使用Apple转发电子邮件地址)。最后,他们被要求输入密码

一切都好

问题 然而,从流量的角度来看,“注册”(即创建帐户)并不是唯一可用的东西

因此,当我们之前已经让用户登录,并且存储了
ASAuthorizationAppleIDCredential
先前提供的不透明用户ID时,我希望:

  • 当我为
    asAuthorizationAppleId按钮选择.signIn时
  • 当我提供以下信息时:

    let request = appleIDProvider.createRequest()
    request.requestedOperation = .operationLogin
    request.user = fedId
    
ASAuthorizationController
将更改其措辞,并且不会再次询问用户

使用您的Apple ID“[电子邮件]”为[应用程序]创建帐户

这并不是我们希望用户看到的

我是否遗漏了允许该流不同的内容(即更多的“登录”流)

注意:注册流使用以下内容

    let request = appleIDProvider.createRequest()
    request.requestedScopes = [.fullName, .email]

这会在第二个屏幕(选择要共享的电子邮件地址)中产生一些不同的外观,但这并不理想。

在模拟器中运行上述代码与在实际设备上运行代码之间似乎有很大的体验差异。设备的流程显示一个屏幕,显示“您想用您的Apple ID登录[app]吗…”。这就是预期的流量。然而,由于某些原因,我无法在我的设备上获得“注册”流。在模拟器中运行上述代码与在实际设备上运行代码之间似乎有很大的体验差异。设备的流程显示一个屏幕,显示“您想用您的Apple ID登录[app]吗…”。这就是预期的流量。但是,由于某些原因,我无法在我的设备上获得“注册”流。