分享到新浪微博,折腾了大半个月,现在终于弄出来了,心里的那个爽呀,太痛快了,哈哈!!

废话少说,首先是认证,

1.进入新浪微博提供的开放平台http://open.weibo.com/ 注册新浪账号。

2.点击’我是开发者‘,创建一个应用,得到CONSUMER_KEY和CONSUMER_SECRET,保存这两个值。

3.找到相关的API接口文档,下载android版的SDK weibo4android-1.2.0.zip 。

4.解压后倒入到eclipse中。

------下面是关键步骤

5.在自己的项目中创建一个lib文件夹,分别添加weiboandroid项目中的这三个包commons-codec.jar,commons-httpclient-3.1.jar,commons-logging-1.1.jar 。

注意:这里千万不要添加weibo4android-1.2.0.jar这个包。

然后再将这三个包引用到到项目中。 //这里这样做的好处是当你项目完成后拷贝的别处的时候,不会造成.jar包的丢失……

6.分别添加这四个包的自己的项目中,weibo4android,weibo4android.http,weibo4android.org.json,weibo4android.util。 //此时如果引入weibo4android-1.2.0.jar这个包是会报错,提示什么版本问题,查询提供的都是从1.6版本复制项目到2.2版本的方案。 本人觉得这个包跟现在倒入的四个包造成命名空间的冲突造成的。

7.参考examples-weibo4android.androidexamples下的三个文件。OAuthConstant.java直接拷贝到项目中,AndroidExample.java认证所需要的相关配置,OAuthActivity.java认证成功后得到AccessToken的key和Secret,可以复制其代码。 //详细代码设置后面会给出,不要着急………………

8.AndroidExample和OAuthActivity代码所对应的java文件都需要在AndroidManifest.xml中注册。 注册方式不说,基础入门必修课。

注意对OAuthActivity对应文件参数的设置:

<intent-filter>
< action android:name="android.intent.action.VIEW" />
< category android:name="android.intent.category.DEFAULT" />
< category android:name="android.intent.category.BROWSABLE" />
< data android:scheme="cn.edu.cou.mobile" android:host="ShareSinaSendActivity" /> //这里scheme host 在AndroidExample对应文件跳转时会用到
< /intent-filter>

9.最重要的一点,在复制到项目中的weibo4android包下找到Weibo.java文件,修改CONSUMER_KEY和CONSUMER_SECRET的值,与第二点是提到的值对应。

10.代码部分:

AndroidExample对应文件中必须有:

System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);

然后:

Weibo weibo = OAuthConstant.getInstance().getWeibo();
RequestToken requestToken;
try {
requestToken =weibo.getOAuthRequestToken("weibo4android://OAuthActivity"); // 分别取第八点提到的scheme host ---host必须为在新浪成功后所需要调回的页面名称
Uri uri = Uri.parse(requestToken.getAuthenticationURL()+ "&from=xweibo"); // 即OAuthActivity的对应文件。 scheme建议为项目名称或是项目总的命名空间
OAuthConstant.getInstance().setRequestToken(requestToken);
startActivity(new Intent(Intent.ACTION_VIEW, uri));
} catch (WeiboException e) {
e.printStackTrace();

}

OAuthActivity对应文件:

Uri uri=this.getIntent().getData();
try {
RequestToken requestToken = OAuthConstant.getInstance()
.getRequestToken();
accessToken = requestToken.getAccessToken(uri
.getQueryParameter("oauth_verifier"));
OAuthConstant.getInstance().setAccessToken(accessToken);
textView.setText("得到AccessToken的key和Secret,可以使用这两个参数进行授权登录了.\n Access token:\n"
+ accessToken.getToken()
+ "\n Access token secret:\n"
+ accessToken.getTokenSecret());
} catch (WeiboException e) {
e.printStackTrace();
}

/----------------以下为我在OAuthActivity对应文件中Button的OnClick事件中处理发表一条新微博的功能。

Weibo weibo = new Weibo();
Status status = null;
try {
weibo.setToken(accessToken.getToken(),accessToken.getTokenSecret());
status = weibo.updateStatus("测试android上发新浪微博消息!!!!"); //关键是这里,能否成功调用updateStatus发表微博,有兴趣的可以仔细研究一下。
} catch (WeiboException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(status.getId() + " : " + status.getText() + " "
+ status.getCreatedAt());

//如果程序能执行到这里,证明已经发表成功,下面是执行成功后跳转到另外一个页面。

Intent intent = new Intent();
intent.setClass(ShareSinaSendActivity.this, ShareListActivity.class);
ShareSinaSendActivity.this.startActivity(intent);

到这里,功能基本上就完了,如果想要其他的功能,只需要根据SDK上提供的那个Demo进行对应的操作即可。

总结:分享到新浪微博,调用新浪的API,除了登陆界面是新浪提供外,其余貌似都需要些xml布局文件。 本人乃初学,以上为记录这次成功后的分享,希望也能帮到很多需要做新浪微博分享功能的人。 对于android的知识点,每个人提供多提供一点心得,既是对自己的一种提升,同时又能帮到更多的人,真的很好!!!!

备注:由于前段时间很悲催,本本被盗了,所有的资料代码全部遗失,痛心啊!!!     因此对于发邮件索要源码的大虾们无法提供支持,望见谅……

android分享到新浪微博,认证+发送微博相关推荐

  1. js分享代码(新浪微博,腾讯微博,QQ空间,QQ好友)

    js分享代码(新浪微博,腾讯微博,QQ空间,QQ好友) 代码如下: <!DOCTYPE html> <html lang="en"> <head> ...

  2. android分享到新浪微博,认证+发送微博,神马'40113token_rejected! Oauth Token不合法'错误,都TMD都是浮云,终于一切搞定!

    分享到新浪微博,折腾了大半个月,现在终于弄出来了,心里的那个爽呀,太痛快了,哈哈!! 废话少说,首先是认证, 1.进入新浪微博提供的开放平台http://open.weibo.com/ 注册新浪账号. ...

  3. Android新浪微博之发送微博

    发送微博主要就是调用新浪微博给的接口.调用android拍照和对拍照后的图片处理. 拍照时调用的系统接口代码是: Intent takephoto = new Intent(android.provi ...

  4. android 分享到新浪微博客户端,新浪微博新版Android客户端,支持将微博分享给微信好友和微信朋友圈...

    这两天我们都在谈论微信想要"燃烧一切"野心:更新客户端,支持多人语音同时聊天,开放系统API,支持将微信消息同步保存到印象笔记.如今这把火终于烧到了新浪微博,今天新浪微博Andro ...

  5. android分享到新浪微博客户端吗,Android调用手机新浪微博客户端分享

    通过Action_Send以及Intent.createChoose()调用系统分享功能时,是可以显示当前手机上已安装的能分享的客户端列表,当然,开发者也可以指定单独某一个平台来分享,代码如下: pu ...

  6. Android分享到新浪微博

    废话不说,开始正题. 进入新浪微博提供的开放平台http://open.weibo.com/ 注册新浪账号. 点击'我是开发者',创建一个应用,如果有账号,当然就省事了,得到CONSUMER_KEY和 ...

  7. android 实现自动拍照,android实现定时拍照并发送微博功能

    最近在做android方面的开发,下面是android自动对焦并拍照的小例子: package com.comnvi.camera; import java.io.File; import java. ...

  8. 模拟新浪微博登录发送微博

    2015-10-14 应该是新浪微博更新,导致项目中之前开发的发送未必代码不能用了,结合网上的案例,修改了点代码重新整合下.代码看附件. 注意点: 模拟登陆时 postMethod2.addParam ...

  9. python发微博_Python使用新浪微博API发送微博的例子

    #!/usr/bin/env python # -*- coding: utf-8 -*- from weibopy.auth import OAuthHandler from weibopy.api ...

  10. 使用Http Basic方式发送微博

    使用新浪微博接口发送微博有多种方式,本文介绍使用最简单的Http Basic方法调用新浪的接口.新浪微博开发平台 open.weibo.com,首先需要新建一个应用,得到AppKey就可以了.具体请看 ...

最新文章

  1. MySQL 5.7---安装详细教程(.zip安装)
  2. Dataset之MNIST:MNIST(手写数字图片识别+ubyte.gz文件)数据集的下载(基于python语言根据爬虫技术自动下载MNIST数据集)
  3. group by 练习
  4. dos攻击mysql_浅谈DOS与DDOS攻击
  5. 用802.11n 加速,将android手机屏幕投影到win7电脑上
  6. 读书笔记--模板与泛型编程
  7. Python学习14 模块和包
  8. ios 静态库合成_iOS : 静态库(.framework)合并
  9. 扫地机器人电路原理图_扫地机有这一台就够了:石头扫地机器人T6 首拆
  10. ubuntu 系统相关
  11. ~~染色法判别二分图
  12. 继Nat Friedman离开Github之后,Xamarin联合创始人离开微软
  13. linux shell学习-1
  14. #Pragma Pack(n)与内存分配
  15. 最受欢迎的网管工具集
  16. 洛谷P1005 [NOIP2007 提高组] 矩阵取数游戏
  17. 景观设计名字主题_园林景观好听的名字
  18. axios封装需要注意的增删改查传参易混淆点
  19. Nginx失败重试中的HTTP协议幂等问题: non_idempotent
  20. html中获取浏览器窗口宽度,JavaScript 获取浏览器窗口的大小

热门文章

  1. 发现同构:Gartner曲线、达克效应 与 跨越鸿沟
  2. EDA实验:(DTTIMES)数字秒表的设计
  3. 基于FPGA的自动售货机设计(EDA课程设计)(湖南科技大学)
  4. 私服游戏推荐服务器三丰云服务器
  5. 快速阅读之眼球的训练
  6. eclipse svn忽略指定文件或文件夹
  7. AOP与AspectJ的关系
  8. 搭建 Ruby 运行环境【Rails后端开发训练营】
  9. 移动办公正在让电子邮件系统变得更有趣
  10. 改变世界的十大计算机病毒(图)