ログインボタンでGoogleのドキュメントに苦労しています。基本的には、Googleのログインボタンを押すとすぐに画面にアクティビティインジケータを追加します。しかし、実際にはサインインフローは、処理方法を選択が完了していない、とUIはもはやべきgoogle signin button press detection ios
- signInWillDispatch:error:
の下のドキュメントから呼び出される唯一の二つの機能がありますスピナーやその他の「しばらくお待ちください」要素を表示します。もっと...
- signIn:didSignInForUser:withError:
サインインフローを終了し、エラーがnilであれば成功したしました。もっと... `
私はすぐに私は、Googleのログインボタンを押した後に呼び出されるものを知らない機能として、私は私のbeginActivityIndicatorコードを置くことができる場所を知りません。
おかげで、CODE WITH
--update - 以下は、私がGIDSignInUIDelegateとGIDSignInDelegateから継承私loginVCを持っている4つの機能をされています。私は、アクティビティインジケータを開始できるように、SignInWillDispatchの前に関数にアクセスする必要があります。しかし、ドキュメントのどこにあるのかわかりませんでした。私はGoogleのボタンにタップジェスチャー認識機能を含めてみました。私はそれを行うと、ログイン機能は完全に空白UIViewのように動作しなくなる
// Google login buttob
GIDSignIn.sharedInstance().uiDelegate = self
GIDSignIn.sharedInstance().delegate = self
// Uncomment to automatically sign in the user.
//GIDSignIn.sharedInstance().signInSilently()
// TODO(developer) Configure the sign-in button look/feel
let googleSignInBtn = GIDSignInButton()
googleSignInBtn.frame.size = loginButton.frame.size
googleSignInBtn.center.x = loginButton.center.x
googleSignInBtn.center.y = loginButton.center.y + 80
googleSignInBtn.style = .Wide
self.view.addSubview(googleSignInBtn)
func signIn(signIn: GIDSignIn!, presentViewController viewController: UIViewController!) {
print("Signed in with google")
}
func signInWillDispatch(signIn: GIDSignIn!, error: NSError!) {
print("Signin Will Dispatch")
}
func signIn(signIn: GIDSignIn!, dismissViewController viewController: UIViewController!) {
print("GoogleSignInDismiss")
}
func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {
activityIndicatorBegin() // Having the activity indicator start here is too late. I need it to start as soon as the google button is pressed. Otherwise there would be a moment just after the google view dismisses without activity indicator
if let error = error {
print(error.localizedDescription)
return
}
let authentication = user.authentication
let credential = FIRGoogleAuthProvider.credentialWithIDToken(authentication.idToken, accessToken: authentication.accessToken)
FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in
if let error = error {
self.showErrorAlert("Error Sign in Firebase with google", message: error.localizedDescription)
} else {
}
self.activityIndicatorEnd()
}
}
func signIn(signIn: GIDSignIn!, didDisconnectWithUser user:GIDGoogleUser!, withError error: NSError!) {
// Perform any operations when the user disconnects from app here.
print("didDisconnectWithUser")
}
はあなたのコードを投稿します私はUIButton作成されたなかったと... –
はそれほどIOSを知っているが、「ガイド」ことを確認してくださいしないでください。https://developers.google .com/identity/sign-in/ios/start-integrationこれはhttps://developers.google.com/identity/sign-in/ios/sign-in –
コードがキャプテンに投稿されました。私は開発者のguidを通過しました、そして、ここで私は立ち往生しています。歓声 – user172902