以下是我使用GIDSignIn
登录从Google帐户中获取人/联系人的代码。
代码:
- (void)setAuthorizerForSignIn:(GIDSignIn *)signIns user:(GIDGoogleUser *)user {
GTMOAuth2Authentication *auth = [[GTMOAuth2Authentication alloc] init];
[auth setClientID:signIns.clientID];
[auth setUserEmail:user.profile.email];
[auth setUserID:user.userID];
[auth setAccessToken:user.authentication.accessToken];
[auth setRefreshToken:user.authentication.refreshToken];
[auth setExpirationDate: user.authentication.accessTokenExpirationDate];
appDelegate.authGooglePlus = auth;
NSString *urlStr = @"https://people.googleapis.com/v1/people/me/connections?pageSize=200";
NSURL *url = [NSURL URLWithString:urlStr];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"GET"];
auth.scope= @"https://www.googleapis.com/auth/contacts";
[auth authorizeRequest:request
completionHandler:^(NSError *error) {
NSString *output = nil;
if (error) {
output = [error description];
} else {
NSURLResponse *response = nil;
NSData *data = [NSURLConnection sendSynchronousRequest:request
returningResponse:&response
error:&error];
if (data) {
output = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSMutableArray *array = [[output JSONValue] objectForKey:@"connections"];
}
} else {
// fetch failed
output = [error description];
}
}
}];
}
以下是我的获取人/联系人列表的代码,但我只能获得7条记录而不是所有记录,不知道如何实现这一目标吗?
答案 0 :(得分:0)
Google People API仅返回联系人群组中的联系人。很可能问题是其他记录是“其他联系人”,这些联系人不在任何联系人组中,因此不会被返回。
目前无法从Google People API获取其他联系人。