class SignUpViewController: UIViewController, GIDSignInUIDelegate, GIDSignInDelegate {
//ERROR: Candidate has non-matching type '(GIDSignIn!, GIDGoogleUser!, Error!) -> ()'
func sign(_ signIn: GIDSignIn!, didSignInFor user: GIDGoogleUser!, withError error: Error!) {
}
}
我添加了一个符合GIDSignInDelegate
的方法,但它给了我一个错误说:
类型'SignUpViewController'不符合协议'GIDSignInDelegate'。候选人有不匹配的类型'(GIDSignIn!,GIDGoogleUser!,错误!) - >()。
我不知道如何解决这个问题,因为这与自动完成中显示的方法完全相同。 GIDSignInDelegate
协议方法的签名是否发生了变化?
错误不在方法的签名中,而是在这里解释:https://github.com/googlesamples/google-services/issues/267。如果你看看evelynklassen评论:
我有一个名为“Error”的模型,它可能与GoogleSignIn相冲突。
这也是我的情况,因为我在我的项目中有另一个名为Error
的类,它与上面的协议方法传递的error
对象相冲突,该对象也是Error
类型。
希望这可以帮助别人。