3

我正在使用 Xcode 11.3.1 并尝试使用带有 loginkit 的 snapchat 登录我在 info.plist 中添加了添加信息,我的代码是

  SCSDKLoginClient.login(from: self, completion: { success, error in

                        if let error = error {
                            print(error.localizedDescription)
                            return
                        }

                        if success {
                            self.fetchSnapUserInfo() //example code
                        }
                    })

此代码向我显示了 snapchat 的登录 ui,我正在使用我的帐户登录到 snapchat。但我被困在这个用户界面上 在此处输入图像描述

当我点击继续时,什么都没有发生。未调用SCSDKLoginClient 完成块。

4

2 回答 2

0

请确保您的 URL 方案配置正确。

URL 方案

于 2020-03-21T13:02:13.997 回答
0

大家好,我终于找到了解决方案

我使用的是 11.3.1,当我创建新项目时添加 AppDelegateSceneDelegate 默认类。

所以根据我添加的 snapchat logkit 文档

  func application(_ app: UIApplication,
                       open url: URL,
                       options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
          return SCSDKLoginClient.application(app, open: url, options: options)
      }

我的Appdelegate类中的方法。但是这个方法永远不会在xocode 11.3.1中被调用 所以我的问题的解决方案是这样的

 func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
   guard let url = URLContexts.first?.url else {
       return
   }

     SCSDKLoginClient.application( UIApplication.shared, open: url, options: nil)
    }

您需要将此方法添加到您的 sceneDelegate 文件中。然后一切正常。synpchat 需要为新的xcode 11.3.1更新那里的文档。我希望这个答案对你们有所帮助,因为我也在这个问题上浪费了我 3 天的时间。 快乐的编码:)

于 2020-04-02T12:30:18.843 回答