Retrieving user's email Google Login iOS
I am trying to find the email of the logged in account from the google login API in iOS using Swift. The code i used is the same as given in the google Developers instruction page.
This is my code
description = [NSString stringWithFormat: @"%@ %@ %@ %@ %@ %@", person.displayName,person.gender,person.ageRange.min,person.ageRange.max,person.emails,person.birthday];
The output when i print this "description" id is this:
Karanvir Singh male 18 20 ( "GTLPlusPersonEmailsItem 0x7fbe4a67aee0: {value:"karanvir95@gmail.com" type:"account"}" ) (null)
I want to know how i can remove the excess of output when i just want to know the email ID
i want the output as such:
Karanvir Singh male 18 20 karanvir95@gmail.com 17/02/1995
Code as requested:
import "ViewController.h"
import "GoogleOpenSource/GoogleOpenSource.h"
import "GooglePlus/GooglePlus.h"
import "AppDelegate.h"
@interface ViewController ()
@end
@implementation ViewController @synthesize signInButton; @synthesize signOutHandle; @synthesize signInHandle; @synthesize infoLabel; @synthesize description; - (void)viewDidLoad { [super viewDidLoad]; signOutHandle.hidden=true; }
-(void)refreshInterfaceBasedOnSignIn { if ([[GPPSignIn sharedInstance] authentication]) { signOutHandle.hidden=false; signInHandle.hidden=true; infoLabel.text=description; } else {
} }
(void)finishedWithAuth: (GTMOAuth2Authentication *)auth error: (NSError *) error { NSLog(@"Received error %@ and auth object %@",error, auth); if (error) { // Do some error handling here. } else {
GTLServicePlus* plusService = [[GTLServicePlus alloc] init];
plusService.retryEnabled = YES;
[plusService setAuthorizer:[GPPSignIn sharedInstance].authentication];
GTLQueryPlus *query = [GTLQueryPlus queryForPeopleGetWithUserId:@"me"];
query.collection=kGTLPlusCollectionVisible;
[plusService executeQuery:query
completionHandler:^(GTLServiceTicket *ticket,
GTLPlusPerson *person,
NSError *error){
if (error) {
GTMLoggerError(@"Error: %@", error);
} else {
// [person retain];
NSString *age = [NSString string];
description = [NSString stringWithFormat: @"%@ %@ %@ %@ %@ %@ %@", person.displayName,person.gender,person.ageRange.min,person.ageRange.max,person.emails,person.birthday,email];
NSLog(description); }
GTLQueryPlus *query2 = [GTLQueryPlus queryForPeopleListWithUserId:@"me" collection:kGTLPlusCollectionVisible];
[plusService executeQuery:query2 completionHandler:^(GTLServiceTicket *ticket, GTLPlusPeopleFeed *peopleFeed, NSError *error) {
if (error) {
GTMLoggerError(@"Error: %@", error);
} else {
// Get an array of people from GTLPlusPeopleFeed
NSArray* peopleList = peopleFeed.items;
}
}];
[self refreshInterfaceBasedOnSignIn];
}];
} }
- (IBAction)signOutButton:(id)sender { [[GPPSignIn sharedInstance] signOut]; [[GPPSignIn sharedInstance] disconnect];
signOutHandle.hidden=true;
signInHandle.hidden=false;
infoLabel.text=@""; }
(void)signOut { [[GPPSignIn sharedInstance] signOut]; }
(void)disconnect { [[GPPSignIn sharedInstance] disconnect]; }
(IBAction)signedIn:(id)sender { GPPSignIn *signIn = [GPPSignIn sharedInstance]; signIn.shouldFetchGooglePlusUser = YES; signIn.shouldFetchGoogleUserEmail = YES; signIn.clientID = kClientId;
AppDelegate *appDelegate = (AppDelegate *) [[UIApplication sharedApplication] delegate];
signIn.shouldFetchGoogleUserEmail = YES; signIn.delegate = self;
signIn.scopes = @[ kGTLAuthScopePlusUserinfoProfile, kGTLAuthScopePlusLogin,kGTLAuthScopePlusMe,kGTLAuthScopePlusUserinfoEmail ]; signIn.delegate = self; [signIn authenticate]; email=(@"%@",signIn.userEmail); NSLog(@" email:%@",email); }
(void)didDisconnectWithError:(NSError *)error { if (error) { NSLog(@"Received error %@", error); } else { NSLog(@"The user is signed out and disconnected."); // The user is signed out and disconnected. // Clean up user data as specified by the Google+ terms. } }
@end
description = [NSString stringWithFormat: @"%@ %@ %@ %@ %@ %@ %@", person.displayName, person.gender,person.ageRange.min,person.ageRange.max,person.emails.value,person.birthday];
我想指出,你的人没有星期二
链接地址: http://www.djcxy.com/p/68098.html上一篇: 3d numpy数组到2d
下一篇: 检索用户的电子邮件Google登录iOS