各位高手, 我现在通过OAuth 认证获取到了UserId,Token,TokenSecret三个值请问我通过那个接口获取最新微博内容,调用什么接口发布一条最新微博,请大家多多指点,谢谢
解决方案 »
- JDBC 连接 SQLite Error Out of memory
- android keyguadr锁屏程序不能全屏显示
- android mac下 usb 调试
- PreferenceActivity ListPreference下拉联动
- Android 绘图问题
- android 开发之 二维码扫描 ?
- 怎样操作sqlite???????????????????????
- 在android设备上添加thttpd及CGI
- 为什么捕获不到系统的log,而adb可以
- 如何仿照实现qq或者微信的来电提醒功能
- Exception in thread "main" java.lang.NoClassDefFoundError:
- 一个简单的数值转换问题
http://****************/statuses/update.json
或
http://****************/statuses/update.xml详情请看我的博文:
基于Qt/QML的微博客户端
http://blog.csdn.net/deyili/archive/2011/04/11/6315414.aspx
不要那么士吧?
新浪或腾讯有官方的API说明!
不用这样做,API都是开放的
我写了个方法GetSinaWeiBo,把需要的参数传过去,想得到微博内容,请各位指导一下GetSinaWeiBo怎么实现,还有发布一个微博SetSinaWeiBo ,又怎么实现,请各位帮忙,多谢!
{Message message=hand.obtainMessage();
try{
switch(task.getTaskID())
{case Task.TASK_USER_LOGIN://用户登录
weibo.setUserId((String)task.getTaskParam().get("user"));
weibo.setPassword((String)task.getTaskParam().get("pass"));
String result="";
try{
nowUser= weibo.verifyCredentials();
//获取用户头像
// HashMap param=new HashMap();
// param.put("uid", nowUser.getId());
// param.put("url", nowUser.getProfileImageURL());
// Log.d("user", nowUser.getId()+"-----"
// +nowUser.getProfileImageURL());
// Task ts=new Task(Task.TASK_GET_USER_IMAGE_ICON,param);
// MainService.addNewTask(ts);
// 替换为OAuth方式
// //1。根据app key第三方应用向新浪获取requestToken
// System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
// System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
//
// RequestToken requestToken = weibo.getOAuthRequestToken();
// Log.d("rctoken", "获取requestToken"+requestToken.getToken());
// //2。用户从新浪获取verifier_code
// String vcode=weibo.getAuthorizationURL(
// requestToken.getToken(),(String)task.getTaskParam().get("user")
// ,(String)task.getTaskParam().get("pass"));
// Log.d("rctoken", "获取 Vcode"+vcode);
//
// //3.使用verifier_code和requestToken获取Access_Token
// AccessToken accessToken = requestToken.getAccessToken(vcode);
// Log.d("rctoken", "获取 AccessToken"+accessToken.getToken());
// //4 保存数据
// OAuthReadUtil.saveToken(getApplicationContext(), accessToken);
result="loginok";
}catch(Exception e){
result="loginerr";
}
message.obj=result; //保存登录结果
break;
case Task.TASK_GET_USER_HOMETIMEINLINE://获取用户首页微博信息
int nowpage=(Integer)task.getTaskParam().get("nowpage");
int pagesize=(Integer)task.getTaskParam().get("pagesize");
Paging p=new Paging(nowpage,pagesize);//创建分页对象
List<Status> alls=weibo.getFriendsTimeline(p);
for(Status st:alls)
{ //该用户的头像没有获取过
if(allIcon.get(st.getUser().getId())==null)
{
HashMap param=new HashMap();
param.put("uid", st.getUser().getId());
param.put("url", st.getUser().getProfileImageURL());
Log.d("user", st.getUser().getId()+"-----"
+st.getUser().getProfileImageURL());
Task ts=new Task(Task.TASK_GET_USER_IMAGE_ICON,param);
MainService.addNewTask(ts);
}
}
message.obj=alls;
break;
case Task.TASK_GET_USER_HOMETIMEINLINE_MORE://获取更多用户首页微博信息
int nowpage2=(Integer)task.getTaskParam().get("nowpage");
int pagesize2=(Integer)task.getTaskParam().get("pagesize");
Paging p2=new Paging(nowpage2,pagesize2);//创建分页对象
List<Status> alls2=weibo.getFriendsTimeline(p2);
for(Status st:alls2)
{ //该用户的头像没有获取过
if(allIcon.get(st.getUser().getId())==null)
{
HashMap param=new HashMap();
param.put("uid", st.getUser().getId());
param.put("url", st.getUser().getProfileImageURL());
Log.d("user", st.getUser().getId()+"-----"
+st.getUser().getProfileImageURL());
Task ts=new Task(Task.TASK_GET_USER_IMAGE_ICON,param);
MainService.addNewTask(ts);
}
}
message.obj=alls2;
break;
case Task.TASK_GET_USER_IMAGE_ICON:
URL url=(URL) task.getTaskParam().get("url");
//从网络获取用户的头像
BitmapDrawable bd=NetUtil.getImageFromURL(url);
//得到头像对应的UID
Integer uid=(Integer)task.getTaskParam().get("uid");
//添加到集合
allIcon.put(uid, bd);
break;
case Task.TASK_NEW_WEIBO://发表普通微博信息
Status st= weibo.updateStatus((String)task.getTaskParam().get("msg"));
message.obj="微博发表成功";
break;
case Task.TASK_GET_WEIBO_COMMENT://获取所有微博评论信息
List<Comment> allc=weibo.getCommentsByMe();//我发表的所有评论
message.obj=allc;
break;
case Task.TASK_GET_WEIBO_MESSAGE://获取所有私信
List<DirectMessage> alldc=weibo.getDirectMessages();//我所有私信
message.obj=alldc;
break;
case Task.TASK_NEW_WEIBO_COMMENT://发表微博评论
if((Boolean)task.getTaskParam().get("news"))
weibo.updateStatus((String)task.getTaskParam().get("msg"));
weibo.updateComment((String)task.getTaskParam().get("msg"),
(String)task.getTaskParam().get("id"),
"");
message.obj="微博评论发表成功";
break;
case Task.TASK_NEW_WEIBO_PIC://发表图片微博信息
String msg = URLEncoder.encode((String)task.getTaskParam().get("msg")
, "UTF-8");
ImageItem it=new ImageItem("pic",(byte[])task.getTaskParam().get("picdat"));
//发表图片微博
Status status = weibo.uploadStatus(msg, it);
message.obj="微博发表成功";
break;
case Task.TASK_NEW_WEIBO_GPS://发表GPS微博信息
//发表图片微博
Status statusgps = weibo.updateStatus(
(String)task.getTaskParam().get("msg"),
((double[])task.getTaskParam().get("gpspoint"))[0],
((double[])task.getTaskParam().get("gpspoint"))[1]);
message.obj="微博发表成功";
break;
}
private String mdate; // 微博的更新时间
private String mContent; //微博的内容
显示的时候我只要获取上面这三个值,更新微博的时候只更新签名内容