【发布时间】:2011-12-14 02:20:54
【问题描述】:
我正在制作一个应用程序,其中有这个编辑框和一个分享按钮,当我点击分享按钮时,它会在我的 LinkedIn 帐户上发布我的状态我尝试了社交库,但它没有用,请帮助我如何发布状态。
【问题讨论】:
标签: android
我正在制作一个应用程序,其中有这个编辑框和一个分享按钮,当我点击分享按钮时,它会在我的 LinkedIn 帐户上发布我的状态我尝试了社交库,但它没有用,请帮助我如何发布状态。
【问题讨论】:
标签: android
我花了太多时间才得到答案。我已经使用了signpost lib和linkedin-j-android lib
当您获得令牌和秘密令牌后(如果想要获取令牌和秘密令牌,您可以查看从here 获取此内容的本教程)之后,您可以非常轻松地发布共享,只需将此令牌和秘密令牌存储在 SharedPreference 中.像这样
LinkedInAccessToken accessToken = oauthservice.getOAuthAccessToken(liToken, oauth_verifier);
final Editor edit = prefs.edit();
edit.putString(OAuth.OAUTH_TOKEN, accessToken.getToken());
edit.putString(OAuth.OAUTH_TOKEN_SECRET, accessToken.getTokenSecret());
edit.putString("linkedin_login", "valid");
edit.commit();
现在你可以从另一个活动中使用这个令牌和秘密,因为发布共享首先获取消费者对象
private OAuthConsumer getConsumer() {
OAuthConsumer consumer = new CommonsHttpOAuthConsumer(LinkedinConstants.CONSUMER_KEY, LinkedinConstants.CONSUMER_SECRET);
consumer.setTokenWithSecret(token, secret);
return consumer;
}
现在让消费者使用 HttpPost 执行 REST 调用
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpPost post = new HttpPost("https://api.linkedin.com/v1/people/~/shares");
consumer.sign(post); // here need the consumer for sign in for post the share
post.setHeader("content-type", "text/XML");
String myEntity = "<share><comment>This is a test</comment><visibility><code>anyone</code></visibility></share>";
post.setEntity(new StringEntity(myEntity));
org.apache.http.HttpResponse response = httpclient.execute(post);
作为分享帖子的网址,因此您需要像上面一样在标题部分设置消息。
对于共享 REST 调用,请参阅 here
抱歉英语不好:-)
【讨论】:
查看他们的REST API。
他们的 API 也有 got a good java wrapper。 具体查看this和this page。
还有一个关于如何使用可用的 java 包装器更新状态的示例,位于 here。
【讨论】: