iOS:无法获取所有Google People api收藏列表

时间:2016-10-04 11:35:04

标签: ios objective-c google-api google-people

以下是我使用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条记录而不是所有记录,不知道如何实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

Google People API仅返回联系人群组中的联系人。很可能问题是其他记录是“其他联系人”,这些联系人不在任何联系人组中,因此不会被返回。

目前无法从Google People API获取其他联系人。