在我的iOS应用程序中,我正在使用Google+登录功能正常运行。但是在设备中安装原生Google+应用时失败了。
如果设备中未安装Google+应用程序,则登录通过网络进行并正常运行。如果已安装,则通过此已安装的本机应用程序进行登录。
我正在使用GPPSignIn API进行身份验证。我提及实施的Google文档是https://developers.google.com/+/mobile/ios/sign-in
我收到的错误是 - “登录时出错Error Domain = com.google.GooglePlusPlatform Code = -1”操作无法完成。 (com.google.HTTPStatus错误400。)“”
-(IBAction)handleTapOnGooglePlus:(id)sender {
if ([[GPPSignIn sharedInstance] authentication]) {
[self showProgressHUDWithText:@"Signing Out"];
[self signOut];
} else {
[[GPPSignIn sharedInstance] authenticate];
[GPPSignIn sharedInstance].attemptSSO = YES;
}
}
提前致谢
Shashank
答案 0 :(得分:0)
确保您的接口文件中包含GPPSignInDelegate。然后尝试一下。
-(IBAction)handleTapOnGooglePlus:(id)sender
{
if ([GPPSignIn sharedInstance].authentication)
{
NSLog(@"Already authenticated");
}
else
{
[[GPPSignIn sharedInstance]signOut];
[GPPSignIn sharedInstance].delegate=self;
[[GPPSignIn sharedInstance]authenticate];
}
}
在此处理回调
-(void)finishedWithAuth:(GTMOAuth2Authentication *)auth error:(NSError *)error
{
[[[GPPSignIn sharedInstance] plusService] executeQuery:[GTLQueryPlus queryForPeopleGetWithUserId:@"me"] completionHandler:^(GTLServiceTicket *ticket, GTLPlusPerson *person, NSError *error)
{
if(error)
{
NSLog(@"Google Plus Error:%@",error.localizedDescription]);
}
else
{
NSLog(@"Authenticated");
}];
}