自己总结的一些android新浪登陆和根据用户ID获取用户信息,以下代码只是写了重要的部分,详细代码可到新浪官方下载一个Demo,里面都有详细流程和各种API。

Constant.java   常量类

View Code

/** 新浪设置appkey及appsecret access_token */
public static final String CONSUMER_KEY = "XXXXXXXX";
public static final String CONSUMER_SECRET = "XXXXXXXXXXXX";
public static String ACCESS_TOKEN = "";

新浪微博登陆事件

View Code

        tv_sina.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {try {Weibo weibo = Weibo.getInstance();weibo.setupConsumerConfig(Constant.CONSUMER_KEY, Constant.CONSUMER_SECRET);// 隐式授权认证方式weibo.setRedirectUrl("http://XXXXX.com");weibo.authorize(LoginActivity.this,new AuthDialogListener()); } catch (Exception e) {}}});/** 新浪微博认证登陆框 */class AuthDialogListener implements WeiboDialogListener {@Overridepublic void onComplete(Bundle values) {// 清楚新浪微博API登陆账号密码Utility.clearCookies(LoginActivity.this);Utility.clearRequestHeader();CookieManager.getInstance().removeSessionCookie();token = values.getString("access_token");String expires_in = values.getString("expires_in");wb_uid = values.getString("uid");// 保存常量Constant.ACCESS_TOKEN = token;Utility.setAuthorization(new Oauth2AccessTokenHeader());AccessToken accesstoken = new AccessToken(token, Constant.CONSUMER_SECRET);accesstoken.setExpiresIn(expires_in);Weibo.getInstance().setAccessToken(accesstoken);/*synchronized (LoginActivity.class) {if(sendhandler == false){sendhandler = true;Log.i("LOGIN", "********************************");Message msg = Message.obtain();msg.arg1 = 1;handler.sendMessage(msg);}sendhandler = true;}*/}@Overridepublic void onError(DialogError e) {}@Overridepublic void onCancel() {}@Overridepublic void onWeiboException(WeiboException e) {}}

根据用户ID获取用户信息

View Code

    /*** 新浪微博:根据用户ID获取用户信息* @param weibo* @return* @throws MalformedURLException* @throws IOException* @throws WeiboException*/public String getUserCounts(Weibo weibo,String uid) throws MalformedURLException, IOException, WeiboException {String url = Weibo.SERVER + "users/show.json";WeiboParameters bundle = new WeiboParameters();bundle.add("source", Weibo.getAppKey());bundle.add("uid", uid);String res = weibo.request(this, url, bundle, "GET", weibo.getAccessToken());return res;}/** 通过JSON获取到新浪微博用户信息,且解析相关内容信息 */String UserResult = getUserCounts(Weibo.getInstance(), wb_uid);JSONObject jsonObj = new JSONObject(UserResult);// 用户昵称wb_screen_name = jsonObj.getString("screen_name");// 友好显示名称(name)wb_name = jsonObj.getString("name");// 用户头像地址,50×50像素wb_profile_image_url = jsonObj.getString("profile_image_url");

Android新浪微博登陆和获取个人信息相关推荐

  1. 爬虫基础-登陆github获取个人信息

    登陆github获取个人信息 import requests from bs4 import BeautifulSoup##获取github的token github_get = requests.g ...

  2. android调用在线天气服务,android通过google api获取天气信息示例

    android通过google API获取天气信息 复制代码 代码如下: public class WeatherActivity extends Activity { private TextVie ...

  3. android自动获取天气,android通过google api获取天气信息示例

    android通过google API获取天气信息 public class WeatherActivity extends Activity { private TextView txCity; p ...

  4. Android 12 通过 adb 获取 imei 信息

    Android 12 通过 adb 获取 imei 信息 小米 E:\exe>adb shell "service call iphonesubinfo 1 | cut -c 52-6 ...

  5. 新浪微博登陆,获取微博用的信息

    一.登陆微博公众平台,创建网站应用 地址:点击打开链接 1.获取appid和appkey 2.设置测试账号,审核通过之后其他用户方可使用 二.参考微博OAuth2.0,分三步获取用户信息 详细:点击打 ...

  6. php微博cookie获取,python模拟新浪微博登陆之获取cookies-Go语言中文社区

    首先感谢敲代码的耗子,之前一直搞不懂登陆新浪微博的原理,看了他那篇文章之后,终于明白了基本原理.在这里主要是通过代码实现那篇文章的过程. 获取网页使用的包是requests,正则匹配用的是re,其他需 ...

  7. 实现新浪微博第三方登录获取用户信息

    第一步:创建Android项目下载新浪sdk 下载地址:https://github.com/sinaweibosdk/weibo_android_sdk 里面包含签名工具和新浪官方的debug.ke ...

  8. [小程序]微信小程序登陆并获取用户信息

    1.小程序js端调用框架登陆API,获取到一个临时code,拿着这个code去调用自己的服务端接口 2.在自己的服务器端,使用app_id app_secrect code可以获取到用户的openid ...

  9. 在delphi程序中实现QQ用户的Web登陆并获取个人信息

    { code by siow http://blog.csdn.net/siow ver 0.2 2009-04-16 修正了分组信息与好友信息获取不到的bug ver 0.1 2009-04-15 ...

最新文章

  1. SpringBoot 定时任务动态管理通用解决方案
  2. 彻底搞懂视觉-惯性SLAM:基于VINS-Fusion(正式开课)
  3. js更改html元素颜色,HTML - 使用JS根据值更改文本的颜色
  4. MySQL中的配置参数interactive_timeout和wait_timeout
  5. C#3.0新特性小结(2)
  6. dataset for person re-id
  7. Python:安装dlib库
  8. shell与其他语言不同点
  9. MYSQL创建、删除、修改索引语法
  10. dd wipe 命令磁盘清空shell脚本,笔记本台机MAC通用
  11. 在django项目中使用django-ckeditor
  12. SQL Server 按某一字段分组取最大(小)值所在行的数据
  13. 关于qt使用sqlist数据库的注意事项
  14. 软件平台与中间技术复习
  15. 国培计算机音乐教学设计作业,2017国培计划教学设计
  16. ubuntu分区大小
  17. 家用 NAS 服务器(1)| 配置选择及准备
  18. 股票大作手回忆录(读书笔记)
  19. 著名平面设计师有哪些?你想成为他们嘛?
  20. 洛谷P2071 座位安排

热门文章

  1. 「golang」panic: commands out of sync. Did you run multiple statements at once
  2. CSS基础知识(颜色、伪类、盒子模型)
  3. 物理机_双机调试_资料
  4. 普通用户下变成-bash-3.2$的解决方法
  5. jQuery 是为事件处理特别设计的。
  6. java内部类和匿名类
  7. 美卫星拍最详细3D地图 覆盖地球99%大陆
  8. 网络风行者(KSpider)的规则体系结构
  9. HADOOP常见错误
  10. 实现简单递归c++实现