I want to share some information in Google+ wall from my application. For that I go through the Google+ API. In that API they are mentioning how to get access token of a particular user, but they do not mention how to post in users wall using the access token.
问题:
回答1:
Well, Google+ doesn't have a "wall," it has "Streams." The proper term might help you find better search results. Either way, unless you're a Google partner, the news isn't good:
The API is currently limited to read-only access. From the API website:
Note: The Google+ API currently provides read-only access to public data. All API calls require either an OAuth 2.0 token or an API key.
Because it's read-only, you will not be able to update or post any information anywhere through the API -- you can only use it to pull basic information like profile and activity details.
Given that access to the API may change over time, I'll try to keep this answer up to date with information about news or changes related to write access.
News & Updates
2015-04-28
: Google+ Domains API was announced way back in August 2013, but somehow I missed its relevance to Google+.
The Google+ Domains API allows Google Apps customers and ISVs to take advantage of enhanced Google+ APIs to build tools and services that can be used in a variety of ways.
No, it does not provide full write access to a user's Google+ profile, but it does give you minor advantages over the Google+ API v1, at least within a domain. This one's mainly for mobile app developers.
2015-01-21
: I have revisited many of the sources linked in this answer and searched for news regarding API changes, but Google has been quiet.
2014-03-12
: Various discussion threads on Google+ about write access (or lack thereof):
- Discussion thread by Jeff Dwyer
- In-depth discussion of the topic by Thor Mitchell (the Google+ team member mentioned in Update 6)
2013-12-03
: The issue thread from UPDATE 1 has finally been responded to by a Google+ project member. Additional discussion regarding write-access to Streams is taking place intermittently on the Developing with Google+ community page.
2013-07-05
: A developer named Eric Leroy has built an "unofficial" JavaScript library that provides read/write extension to the Google+ API.
- via Google+ XHR Hack = w+ (Add/Post)
2013-05-14
: A "social media management company" can gain additional API access by attempting to become a Google+ Pages API Partner.
- Google+ Pages API Partner Application Form
- More third party tools to help manage your Google+ page - An announcement from Eduardo Thuler
- Original Google announcement of third party management tools
Here's an excerpt from the Partner Application Form:
The Google+ pages API allows social media management companies to add Google+ page management features into their tool. Access to this API is available through a whitelist, and access is granted to partners on a company by company basis dependent on fit with this API.
Other articles explaining the lack of a write API:
- http://mashable.com/2012/08/02/google-to-developers-wont-screw-you/
2013-01-04
: Google just announced Google+ History. You can use it to write "moments" (which are private by default) but can then be made public by sharing them directly to your stream and/or your profile. One of the moment types is CommentActivity
.
2012-10-08
: There's now a duplicate bug post with only a few comments, but you can check there for future updates as well.
2012-06-25
: I came across the issue tracker post for Google+ Write Access. The enhancement request status is "New" and priority is "Medium" as of June 25th, 2012. There are some links of interest in the comments.
回答2:
This might help: I have made this bookmarklet to post links to pages that I liked to my stream:
javascript:location='https://plusone.google.com/_/+1/confirm?hl=en&url='+location
The URL is self-explanatory. If your post content can be served via URL then you can post it like that. The only difficulty is to automate the posting callback from Google but I do not need it, should not be too hard.
回答3:
If you use wordpress there is a plugin that allows you to post automatically to google plus WP Plugin Post to Google Plus however it's not free, cheap but not free. You can probably debug it since it's php and see how they do that.
回答4:
You can now do this. See google's developer docs below:
https://developers.google.com/+/domains/posts/creating
The only thing to be aware of is that the Google+ Domains API only allows creation of restricted posts, and only allows comments to be added to restricted posts.
回答5:
Writing to Google+ Profile Streams is restricted to just domains.
For example, If you own a company named xyz co and has a domain xyz.com. You can used Google+ Domains API to write to streams. Though that will be restricted to people using same domain and using Google G Suit App for business and is not available for normal Google's gmail.com email ID.
The Google+ Domains API only allows creation of restricted posts, and only allows comments to be added to restricted posts.
For example Jon and Misha are working as employee in xyz co and has associated company mail id jon@xyz.com and misha@xyz.com then they can post to associated domain streams in Google+. Though these post will not be visible publicly and are restricted to be visible to members belonging to same domain. If any post has to be made public, then you have to do that task manually Ref.
If you are looking to post information on Google+ for some business or celebrity then you must are looking for Google+ Page API, which allows you to write post on business page. Though they have restricted here with partners application form that need to be approved for having your access to Pages API, which is very stringent and difficult to get approved.
The Google+ pages API allows social media management companies to add Google+ page management features into their tool. Access to this API is available through a whitelist, and access is granted to partners on a company by company basis dependent on fit with this API. If you are a social media management company interested in getting access to this API, please complete the form below with details about your company's platform. Please answer all questions below accurately; any inaccurate information that misrepresents your tool can affect your company's access to this API. If your company is a fit for this API's functionality, the Google+ team will reach out to the contact provided in this form with next steps. Please do not submit multiple entries to this form.
Other method to post in Google+ is via their Share button, Interactive Posting & Embedded Posting to Google+ Ref.
回答6:
//Follow this : 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];
}