如何修复 Xcode 12 beta 6 中的 ASAuthorization 错误?

Mar*_*421 5 firebase swiftui asauthorizationcontroller sign-in-with-apple xcode12

在 Xcode 12 的最新 beta 6 中,我在尝试恢复 SwiftUI 预览时出现错误。主要错误似乎是Cannot find type 'ASAuthorizationAppleIDButton' in scope. 在模拟器上构建或运行时,代码编译得非常好,并且没有出现错误。只有当我尝试运行预览时,事情才行不通。我看到的其他错误是:

Type 'SignInAppleButton' does not conform to protocol 'UIViewRepresentable'
Cannot find type 'ASAuthorizationControllerDelegate' in scope
Cannot find 'ASAuthorizationAppleIDProvider' in scope
Cannot find type 'ASAuthorization' in scope
Run Code Online (Sandbox Code Playgroud)

import AuthenticationServices在我的文件的顶部。一个重要的注意事项是,同一个项目在 Xcode 12 beta 1 上运行得非常好,没有任何错误。

我发现的一个短期解决方案是使用 ASAuth(随后与 Apple 登录)删除所有代码,然后从 Firebase CocoaPods 切换到新的 Firebase Swift 包管理器。这使预览工作。在从 CocoaPods 切换之前,我会在删除 ASAuth 代码后收到奇怪的链接器错误。

我的假设是我需要使用Apple按钮实现SwiftUI的新Signin,但是根据Apple提供的小文档,我不知道如何使用它。

这是我的代码引用的网站几乎完全相同:https : //www.alfianlosari.com/posts/building-authentication-in-swiftui-using-firebase-auth-sdk-and-sign-in-with-apple/