最近学习Android的开发,学完书本之后,决定研究如何开发一个微博客户端来实践。第一步当然是用户授权。但是新浪开放平台的说明实在写得不太清楚,用GOOGLE+研读的方法,总算是实验成功了。

这里有别人已经提供好的一份代码和说明

http://www.cnblogs.com/ok-lanyan/archive/2012/07/15/2592070.html

下面的说明没有代码,如果不太明白,直接运行这个项目就行。

这是我自己总结的三步,虽然不是太准确吧,但大概就是这样了。

1.首先去新浪开放平台申请一个应用。

http://open.weibo.com/选择创建应用→然后就是填表了

友情提示:就算是做实验学习,应用介绍也必须要填够字数,不要采用空格代替,不会就会不断报“更新失败”的错误。

申请成功之后就会获得一个appkey和appsecret了。

2.访问指定的授权页面

访问的方式可以采用WebView也可以采用调用外部浏览器。具体可以去网上搜索了。

指定的授权页面格式说明http://open.weibo.com/wiki/Oauth2/authorize

一般采用的内容是

https://api.weibo.com/oauth2/authorize?client_id=APPKEY&response_type=code&redirect_uri=CALLBACK_URL&display=mobile

这个APPKEY就是上面的appkey。

CALLBACK_URL就是授权回调地址,是由你来指定的任何网页都可以,系统也提供了一个默认的地址https://api.weibo.com/oauth2/default.html,但有一条必须遵守,那就是必须在应用管理里面填写授权回调地址和取消授权回调地址与上面的CALLBACK_URL必须一致。

然后采用WebView访问上面的网页就会出现登陆界面了,输入账号密码即可。

3.取得Access_token

再授权成功的前提下,就会回调上面填写的授权回调页面,此时就可以发出HTTPS的POST请求,获取Access_token。

获取Access_token的说明在http://open.weibo.com/wiki/Oauth2/access_token

一般请求的URL为

https://api.weibo.com/oauth2/access_token?client_id=APPKEY&client_secret=APPSECRET&grant_type=authorization_code&redirect_uri=CALLBACK_URL&code=CODE

APPKEY就是appkey

APPSECRET就是appsecret

CALLBACK_URL就是回调url

CODE是新浪这边生成的回调页面中给定的一个值,使用Uri解析出来就可以了。

然后采用HttpClient或者HttpsURLConnection提交POST请求获取新浪服务器的响应,从数据中解析出Access_token。

新浪微博Android开发获取Access_token的步骤的更多相关文章

  1. android开发获取网络状态,wifi,wap,2g,3g.工具类(一)

    android开发获取网络状态整理: package com.gzcivil.utils; import android.content.Context; import android.net.Con ...

  2. 和小猪一起搞微信公众号开发—获取Access_token

    前言 前一篇小猪和大家分享了如何回复用户的简单文本,这一篇我们来看看如何获取Access_token 介绍 在前一篇中,我们实现了这么一个简单的过程:用户发送一个文本到公众号后,公众号在该文本后面加上 ...

  3. 苹果MAC中安装并搭建Android开发环境的详细步骤

    Android的开发平台搭建主要需要的工具有:Java虚拟机JDK.Eclipse.Eclipse插件ADT(Android Developer Tool)和Android开发包SDK,以下是具体的安 ...

  4. Android开发获取多个存储空间的路径(内置SD卡以及外置SD卡)

    Android开发中经常会遇到多存储空间的问题,包括内置存储路径以及外置SD卡,而且有的时候会有多张外置SD卡,此时就需要获取不同的SD卡路径,然后根据需要来写入或者读出文件. 此处给出常用的SD卡工 ...

  5. Android 开发 获取Android设备的屏幕高宽

    获得屏幕的宽度和高度有很多种方法: //1.通过WindowManager获取 DisplayMetrics dm = new DisplayMetrics(); heigth = dm.height ...

  6. C#微信公众号开发——获取access_token

    access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token.正常情况下access_token有效期为7200秒(两个小时),微信获取access_token接 ...

  7. android开发中图片优化步骤

    android开发中图片优化方法 1.图片加载方法,方便用户加载图片 /*** * 加载本地图片 * @param context:主运行函数实例 * @param bitAdress:图片地址,一般 ...

  8. 微信公众号开发——获取access_token(PHP版)

    access_token是调用微信接口的唯一凭据,每两小时刷新一次,我们需要每两小时就获取一次access_token. <?php class TokenUtil { //获取access_t ...

  9. Android开发 获取视频中的信息(例如预览图或视频时长) MediaMetadataRetriever媒体元数据检索器

    前言 在Android里获取视频的信息主要依靠MediaMetadataRetriever实现 获取最佳视频预览图 所谓的最佳就是MediaMetadataRetriever自己计算的 /** * 获 ...

随机推荐

  1. java.lang.ArrayIndexOutOfBoundsException异常分析及解决

    这是一个非常常见的异常,从名字上看是数组下标越界错误,解决方法就是查看为什么下标越界. 下面是一个错误示例: Exception in thread "main" java.lan ...

  2. thymeleaf switch在表格中的使用,遇到的空行问题

    switch在表格中的使用时 如果把<td>写在<div th:switch="${data.isShow}"> 里面导致外面出现很多空的<div&g ...

  3. 用C#操作IO端口1-用并口控制发光二极管

    什么是端口? 端口包含了一系列信号线, 通过这个端口CPU可以同其他外部设备交换数据, 比如我们经常见到的Modem,打印机等. 通常情况下, 打开的信号是”1”, 关闭的信号是”0”. 并口在同一时 ...

  4. Redis实战——redis主从复制和集群实现原理

    出自:https://blog.csdn.net/nuli888/article/details/52136822 redis主从复制redis主从配置比较简单,基本就是在从节点配置文件加上:slav ...

  5. docker学习记录1

    起因 现在自己学习微服务,服务器越来越多,虽然自己写了一些shell脚本来安装需要的软件,比如mysql,redis,jdk等等,但是还是好麻烦.希望学习docker能够快速安装部署这些东西. 记录一 ...

  6. Linux服务管理 systemctl命令详解

    Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合     任务 旧指令 新指令 使某服务自动启动 ch ...

  7. Centos 安装旧版php5.2

    # yum remove php-* # cd /root/ && mkdir new_php && cd new_php # wget -r http://yum.m ...

  8. 数组和集合(二):List集合的使用总结

    一.概述 · 继承collection接口,List代表一个元素有序.且可重复(包括null)的集合,集合中的每个元素都有其对应的顺序索引 · List默认按元素的添加顺序设置元素的索引 · 提供了一 ...

  9. 用python给图片添加文字(水印)

    题目来源于:Python 练习册,每天一个小程序 第0000题 代码如下: #-*- coding:utf-8 -*- import PIL from PIL import Image from PI ...

  10. Spark之 SparkSql整合hive

    整合: 1,需要将hive-site.xml文件拷贝到Spark的conf目录下,这样就可以通过这个配置文件找到Hive的元数据以及数据存放位置. 2,如果Hive的元数据存放在Mysql中,我们还需 ...