ios - Google Plus api for iOS 获取好友列表
<p><p>我想在 iOS 应用中从 Google+ 获取 friend (人物)列表。</p>
<p>我正在使用链接中提供的 Google+ api 教程
<a href="https://developers.google.com/+/mobile/ios/getting-started" rel="noreferrer noopener nofollow">https://developers.google.com/+/mobile/ios/getting-started</a> </p>
<p>我在 Google+ 开发者控制台上创建了新项目,链接是 </p>
<p> <a href="https://console.developers.google.com/project" rel="noreferrer noopener nofollow">https://console.developers.google.com/project</a> </p>
<p>在 <strong>-(void)getPeopleInfo 中出现以下错误。</strong></p>
<blockquote>
<p> __31-_block_invoke() Error: Error Domain=com.google.GTLJSONRPCErrorDomain Code=401 "The operation couldn’t be completed. (Invalid Credentials)" UserInfo=0x14d89340 {error=Invalid Credentials, GTLStructuredError=GTLErrorObject 0x14d855e0: {message:"Invalid Credentials" code:401 data:}, NSLocalizedFailureReason=(Invalid Credentials)}
2014-03-13 12:40:21.026 GPlusDemo __31-_block_invoke() Error: Error Domain=com.google.GTLJSONRPCErrorDomain Code=401 "The operation couldn’t be completed. (Invalid Credentials)" UserInfo=0x14d85f90 {error=Invalid Credentials, GTLStructuredError=GTLErrorObject 0x14d85ba0: {message:"Invalid Credentials" code:401 data:}, NSLocalizedFailureReason=(Invalid Credentials)}</p>
</blockquote>
<p>我在<strong>ViewController.m</strong></p>中写了如下代码
<pre><code>- (void)viewDidLoad
{
;
// Do any additional setup after loading the view, typically from a nib.
GPPSignIn *signIn = ;
signIn.shouldFetchGooglePlusUser = YES;
//signIn.shouldFetchGoogleUserEmail = YES;// Uncomment to get the user's email
// You previously set kClientId in the "Initialize the Google+ client" step
signIn.clientID = kClientId;
// Uncomment one of these two statements for the scope you chose in the previous step
signIn.scopes = @[ kGTLAuthScopePlusLogin];// "https://www.googleapis.com/auth/plus.login" scope
signIn.scopes = @[ @"profile" ]; // "profile" scope
// Optional: declare signIn.actions, see "app activities"
signIn.delegate = self;
;
}
- (void)didReceiveMemoryWarning
{
;
// Dispose of any resources that can be recreated.
}
-(void)refreshInterfaceBasedOnSignIn
{
if ([ authentication]) {
// The user is signed in.
NSLog(@"Login");
self.signInButton.hidden = YES;
// Perform other actions here, such as showing a sign-out button
;
} else {
self.signInButton.hidden = NO;
// Perform other actions here
}
}
- (void)finishedWithAuth: (GTMOAuth2Authentication *)auth
error: (NSError *) error
{
NSLog(@"Received error %@ and auth object %@",error, auth);
if (error) {
// Do some error handling here.
} else {
;
}
}
- (void)signOut {
[ signOut];
}
- (void)disconnect {
[ disconnect];
}
- (void)didDisconnectWithError:(NSError *)error {
if (error) {
NSLog(@"Received error %@", error);
} else {
// The user is signed out and disconnected.
// Clean up user data as specified by the Google+ terms.
}
}
-(void)getPeopleInfo
{
GTLServicePlus* plusService = [ init];
plusService.retryEnabled = YES;
.authentication];
GTLQueryPlus *query =
[GTLQueryPlus queryForPeopleListWithUserId:@"me"
collection:kGTLPlusCollectionVisible];
[plusService executeQuery:query
completionHandler:^(GTLServiceTicket *ticket,
GTLPlusPeopleFeed *peopleFeed,
NSError *error) {
if (error) {
GTMLoggerError(@"Error: %@", error);
} else {
// Get an array of people from GTLPlusPeopleFeed
NSArray* peopleList = ;
NSLog(@"peopleList:%@", peopleList);
}
}];
}
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>登录成功后调用以下方法,对我来说,我使用以下方法获取好友列表</p>
<pre><code>-(void)finishedWithAuth: (GTMOAuth2Authentication *)auth
error: (NSError *) error {
GTLServicePlus* plusService = [ init];
plusService.retryEnabled = YES;
.authentication];
GTLQueryPlus *query =
[GTLQueryPlus queryForPeopleListWithUserId:@"me"
collection:kGTLPlusCollectionVisible];
[plusService executeQuery:query
completionHandler:^(GTLServiceTicket *ticket,
GTLPlusPeopleFeed *peopleFeed,
NSError *error) {
if (error) {
GTMLoggerError(@"Error: %@", error);
} else {
// Get an array of people from GTLPlusPeopleFeed
NSArray* peopleList = peopleFeed.items;
NSLog(@"peopleList %@ ",peopleList);
}
}];
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - Google Plus api for iOS 获取好友列表,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/22371931/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/22371931/
</a>
</p>
页:
[1]