내 애플리케이션의 Google+ 담벼락에있는 일부 정보를 공유하고 싶습니다. 이를 위해 Google+ API를 사용 합니다. 해당 API에서 특정 사용자의 액세스 토큰을 얻는 방법을 언급하고 있지만 액세스 토큰을 사용하여 사용자 벽에 게시하는 방법은 언급하지 않습니다.
내 애플리케이션의 Google+ 담벼락에있는 일부 정보를 공유하고 싶습니다. 이를 위해 Google+ API를 사용 합니다. 해당 API에서 특정 사용자의 액세스 토큰을 얻는 방법을 언급하고 있지만 액세스 토큰을 사용하여 사용자 벽에 게시하는 방법은 언급하지 않습니다.
답변:
글쎄, Google+에는 '벽'이없고 '스트림'이 있습니다. 적절한 용어는 더 나은 검색 결과를 찾는 데 도움이 될 수 있습니다. 어느 쪽이든 Google 파트너가 아니라면 뉴스는 좋지 않습니다.
API는 현재 읽기 전용 액세스로 제한됩니다. 로부터 API 웹 사이트 :
참고 : Google+ API는 현재 공개 데이터에 대한 읽기 전용 액세스를 제공합니다. 모든 API 호출에는 OAuth 2.0 토큰 또는 API 키 가 필요합니다 .
읽기 전용이기 때문에 API를 통해 정보를 업데이트하거나 게시 할 수 없습니다. 프로필 및 활동 세부 정보와 같은 기본 정보를 가져 오는 데만 사용할 수 있습니다.
API에 대한 액세스는 시간이 지남에 따라 변경 될 수 있으므로 쓰기 액세스 와 관련된 뉴스 또는 변경 사항에 대한 정보를 통해이 답변을 최신 상태로 유지하려고 합니다.
2015-04-28
: Google+ Domains API 는 2013 년 8 월에 발표되었지만 어떻게 든 Google+와의 관련성을 놓쳤습니다.
Google+ Domains API를 통해 Google Apps 고객과 ISV는 향상된 Google+ API를 활용하여 다양한 방식으로 사용할 수있는 도구와 서비스를 구축 할 수 있습니다.
아니요, 사용자의 Google+ 프로필에 대한 전체 쓰기 액세스를 제공 하지는 않지만 적어도 도메인 내에서 Google+ API v1에 비해 약간의 이점을 제공합니다. 이것은 주로 모바일 앱 개발자를위한 것입니다.
2015-01-21
:이 답변에 링크 된 많은 소스를 다시 방문하고 API 변경에 대한 뉴스를 검색했지만 Google은 조용했습니다.
2014-03-12
: 쓰기 액세스 (또는 그 부족)에 대한 Google+의 다양한 토론 스레드 :
2013-12-03
: UPDATE 1의 이슈 스레드가 마침내 Google+ 프로젝트 구성원에 의해 응답 되었습니다. . Streams에 대한 쓰기 액세스에 대한 추가 논의는 Google+로 개발 커뮤니티 페이지 에서 간헐적으로 진행 됩니다.
2013-07-05
: Eric Leroy 라는 개발자 가 Google+ API에 대한 읽기 / 쓰기 확장을 제공 하는 "비공식"JavaScript 라이브러리 를 구축 했습니다 .
2013-05-14
: '소셜 미디어 관리 회사'는 Google+ 페이지 API 파트너가 되려고 시도하여 추가 API 액세스 권한을 얻을 수 있습니다.
다음은 파트너 신청서에서 발췌 한 내용입니다.
Google+ 페이지 API를 사용하면 소셜 미디어 관리 회사에서 Google+ 페이지 관리 기능을 도구에 추가 할 수 있습니다. 이 API에 대한 액세스는 화이트리스트를 통해 제공되며이 API에 대한 적합성에 따라 회사별로 파트너에게 액세스 권한이 부여됩니다.
쓰기 API의 부족을 설명하는 다른 기사 :
2013-01-04
: Google은 방금 Google+ 기록을 발표했습니다 . 이를 사용하여 "모멘트"(기본적으로 비공개)를 작성할 수 있지만 스트림 및 / 또는 프로필에 직접 공유하여 공개 할 수 있습니다. 순간 유형 중 하나는 CommentActivity
입니다.
2012-10-08
: 이제 몇 개의 댓글 만 있는 중복 된 버그 게시물 이 있지만 향후 업데이트도 확인할 수 있습니다.
2012-06-25
: Google+ 쓰기 액세스에 대한 문제 추적기 게시물 을 발견했습니다. 강화 요청 상태는 "새"이고 우선 순위가 6 월 25로 "중간"입니다 제 의견에 대한 관심의 일부 링크가있다 2012 년.
도움이 될 수 있습니다.이 북마크릿을 만들어 내 스트림에 내가 좋아하는 페이지에 대한 링크를 게시했습니다.
javascript:location='https://plusone.google.com/_/+1/confirm?hl=en&url='+location
URL은 자명합니다. 게시물 내용이 URL을 통해 제공 될 수 있다면 그렇게 게시 할 수 있습니다. 유일한 어려움은 Google의 게시 콜백을 자동화하는 것이지만 필요하지 않으며 너무 어렵지 않아야합니다.
워드 프레스를 사용한다면 구글 플러스에 WP 플러그인 포스트에 자동으로 게시 할 수있는 플러그인이 있지만 무료는 아니지만 저렴하지만 무료는 아닙니다. PHP이므로 디버그 할 수 있으며 어떻게 작동하는지 확인할 수 있습니다.
이제 이것을 할 수 있습니다. 아래의 Google 개발자 문서를 참조하십시오.
https://developers.google.com/+/domains/posts/creating
주의해야 할 점은 Google+ Domains API는 제한된 게시물 작성 만 허용하고 제한된 게시물에만 댓글을 추가 할 수 있다는 것입니다.
Google+ 프로필 스트림에 쓰기는 도메인으로 제한됩니다.
예를 들어 xyz co라는 회사를 소유하고 도메인이 xyz.com 인 경우입니다. Google+ Domains API 를 사용 하여 스트림에 쓸 수 있습니다. 동일한 도메인을 사용하고 비즈니스 용 Google G Suit 앱을 사용하는 사람들로 제한되며 일반 Google의 gmail.com 이메일 ID로는 사용할 수 없습니다.
Google+ Domains API는 제한된 게시물 작성 만 허용하고 제한된 게시물에 댓글을 추가하는 것만 허용합니다.
예를 들어 Jon과 Misha는 xyz co에서 직원으로 일하고 있으며 회사 메일 ID jon@xyz.com 및 misha@xyz.com과 연결되어 있으면 Google+의 연결된 도메인 스트림에 게시 할 수 있습니다. 이러한 게시물은 공개적으로 표시되지 않으며 동일한 도메인에 속한 회원 만 볼 수 있도록 제한됩니다. 어떤 게시물을 공개해야하는 경우에, 당신은 수동으로 작업해야 할 심판을 .
일부 비즈니스 또는 유명인을 위해 Google+에 정보를 게시하려는 경우 비즈니스 페이지에 게시물을 작성할 수있는 Google+ 페이지 API를 찾고 있어야합니다 . 여기에서는 Pages API에 대한 액세스 권한을 얻기 위해 승인해야하는 파트너 신청서 양식으로 제한했지만, 이는 매우 엄격하고 승인 받기가 어렵습니다.
Google+ 페이지 API를 사용하면 소셜 미디어 관리 회사에서 Google+ 페이지 관리 기능을 도구에 추가 할 수 있습니다. 이 API에 대한 액세스는 화이트리스트를 통해 사용할 수 있으며이 API에 대한 적합성에 따라 회사별로 파트너에게 액세스 권한이 부여됩니다. 이 API에 대한 액세스 권한을 얻는 데 관심이있는 소셜 미디어 관리 회사 인 경우 회사 플랫폼에 대한 세부 정보와 함께 아래 양식을 작성하십시오. 아래의 모든 질문에 정확하게 답해주십시오. 도구를 잘못 표시하는 부정확 한 정보는이 API에 대한 회사의 액세스에 영향을 미칠 수 있습니다. 귀사가이 API의 기능에 적합한 경우 Google+ 팀은이 양식에 제공된 연락처로 연락하여 다음 단계를 수행합니다. 이 양식에 여러 항목을 제출하지 마십시오.
Google+에 게시하는 다른 방법은 공유 버튼, Interactive Posting & Embedded Posting to Google+ Ref .
// 다음을 따르세요 : https://developers.google.com/+/mobile/ios/share/
-(void)shareGoogle{
[signIn authenticate];
[signIn trySilentAuthentication];
}
-(void)refreshInterfaceBasedOnSignIn {
if ([[GPPSignIn sharedInstance] authentication]) {
// The user is signed in.
NSLog(@"%@", [[GPPSignIn sharedInstance] authentication]);
[self didTapShare:nil];
}
else {
self.signInButton.hidden = NO;
// Perform other actions here
}
}
- (IBAction) didTapShare: (id)sender {
[GPPShare sharedInstance].delegate = self;
id<GPPNativeShareBuilder> shareBuilder = [[GPPShare sharedInstance] nativeShareDialog];
// Set any prefilled text that you might want to suggest
[shareBuilder setPrefillText:@"message"];
[shareBuilder attachImage:[UIImage imageWithData:imageData]];
[shareBuilder open];
likeShareBtn.userInteractionEnabled = FALSE;
}
- (void)finishedSharingWithError:(NSError *)error {
NSString *text;
if (!error) {
text = @"Success";
} else if (error.code == kGPPErrorShareboxCanceled) {
text = @"Canceled";
} else {
text = [NSString stringWithFormat:@"Error (%@)", [error localizedDescription]];
}
NSLog(@"Status: %@", text);
}
-(void)presentSignInViewController:(UIViewController *)viewController {
// This is an example of how you can implement it if your app is navigation-based.
[[self navigationController] pushViewController:viewController animated:YES];
}