Ios 当我按“使用谷歌登录”时,如何打开“使用你的谷歌帐户登录”页面,如当前模型视图?

Ios 当我按“使用谷歌登录”时,如何打开“使用你的谷歌帐户登录”页面,如当前模型视图?,ios,objective-c,google-plus,Ios,Objective C,Google Plus,在我当前的应用程序中,我正在使用谷歌登录。即使我安装了像Google+这样的Google应用程序,我也总是想在输入present model ViewController时打开你的Google帐户登录页面 但现在我的应用程序中发生的事情是,如果我已经登录到已经安装的Google+应用程序,它将打开该应用程序,而不是使用Google页面登录。这意味着它来自我的应用程序并打开Google+应用程序。我不想那样 这是我的密码: GIDSignIn *signIn = [GIDSignIn shared

在我当前的应用程序中,我正在使用谷歌登录。即使我安装了像Google+这样的Google应用程序,我也总是想在输入present model ViewController时打开你的Google帐户登录页面

但现在我的应用程序中发生的事情是,如果我已经登录到已经安装的Google+应用程序,它将打开该应用程序,而不是使用Google页面登录。这意味着它来自我的应用程序并打开Google+应用程序。我不想那样

这是我的密码:

GIDSignIn *signIn = [GIDSignIn sharedInstance];
signIn.clientID = kClientId;
signIn.allowsSignInWithBrowser = YES;
signIn.scopes = @[@"https://www.googleapis.com/auth/plus.login",@"https://www.googleapis.com/auth/plus.me",@"https://www.googleapis.com/auth/userinfo.email"];
signIn.delegate = self;
[signIn signIn];

我的应用程序目标是每次我需要使用谷歌页面而不是谷歌应用程序打开登录时,单击“使用谷歌按钮登录”。

我有一个使用谷歌登录集成的项目,存在同样的问题。 首先,您需要清楚地了解Google Signin SDK是如何工作的。 您可以在此处查看Ian Barber的参考资料:

因此,我的解决方案如下:

每次打开登录视图时,在ViewDidLoad中设置Google Signin配置后,我调用函数[Signin logout]注销当前用户

- (void)viewDidLoad {
    [super viewDidLoad];
    //Configure Google Signin
    GIDSignIn *signin = [GIDSignIn sharedInstance];
    //Sign out
    [signin signOut];
    signin.delegate = self;
    signin.uiDelegate = self;
}

希望这对你有帮助

在我的项目中,有谷歌登录,我使用了最新的GIDSignInButton登录。我遵循所有的步骤。并检查是否成功登录。问题是我必须使用谷歌的GIDSignInButton登录,这不适合我的应用程序的UI

@property (retain, nonatomic) IBOutlet GIDSignInButton *googleSigninbtn;
所以我有我自己的按钮,并隐藏GIDSignInButton从我的故事板。我已经把GIDSignInButton的名字写出来了。现在,点击我自己的按钮,我已经使用这个出口来调用它的委托方法

- (IBAction)buttonClick:(id)sender
{
    [self.googleSigninbtn sendActionsForControlEvents:UIControlEventTouchUpInside];
}
由于这个按钮是隐藏的,但它在故事板中,所以它可以工作,我可以从我的应用程序登录谷歌。它起作用了