首页 文章

Google登录向导不要求添加新帐户或选择现有的iOS

提问于
浏览
0

我正在使用谷歌标志从谷歌认证然后形成我们的应用程序服务器

通过谷歌实施登录,如此处所述https://developers.google.com/identity/sign-in/ios/start-integrating

当我点击谷歌按钮并输入我的谷歌凭证一切正常,但如果我想更改谷歌帐户,我无法这样做

If I click again on google button it doesn't ask for add other account or give me list of existing accounts

它只是让我使用以前使用的帐户静默登录

我遵循的步骤

  • 设置客户端ID:在Info and App Delegate中设置客户端ID

[GIDSignIn sharedInstance] .clientID = @“xxxx.apps.googleusercontent.com”;

  • 设置委托:在登录视图控制器中设置委托

[GIDSignIn sharedInstance] .delegate = self; [GIDSignIn sharedInstance] .uiDelegate = self;

  • 呼叫登录:一旦用户点击下面的登录按钮就是代码

  • (IBAction)googlePlusSignInAction:(id)sender {[GMDCircleLoader setOnView:self.view withTitle:@“”animated:YES]; [[GIDSignIn sharedInstance]标志

在]; }

  • 呼叫退出:从谷歌获取 Profiles 详细信息然后从谷歌签署

//关闭“使用Google登录”视图

  • (void)signIn:(GIDSignIn *)signIn dismissViewController:(UIViewController *)viewController {[self dismissViewControllerAnimated:YES completion:nil]; }

  • (void)signIn:(GIDSignIn *)signIn didSignInForUser:(GIDGoogleUser *)user withError:(NSError *)error {[GMDCircleLoader hideFromView:self.view animated:YES]; //在此处对登录用户执行任何操作 . [[GIDSignIn sharedInstance] signOut]; }

我不确定我错在哪里我检查了Jbong应用程序,但我的应用程序的行为与此不同而不是按照预期

之前尝试过注销

[[GIDSignIn sharedInstance] signOut]; [[GIDSignIn sharedInstance] signIn];

1 回答

  • 2

    基本上,您需要注销并断开用户帐户,以便选择其他帐户进行登录 . 您似乎永远不会在适当的位置在您的代码中执行此操作 . 登录前,您应该注销现有会话,然后尝试登录 .

    Swift

    GIDSignIn.sharedInstance().signOut()
    GIDSignIn.sharedInstance().disconnect()
    

    Objective-C

    [[GIDSignIn sharedInstance] signOut];
    [[GIDSignIn sharedInstance] disconnect];
    

相关问题