要想使用新浪微博的API,首先就必须获得用户的accessToken,否则什么都干不了。
在AuthorizeActivity中
- String token = values.getString("access_token");
- String expires_in = values.getString("expires_in");
- mToken.setText("access_token : " + token + " expires_in: "
- + expires_in);
- AccessToken accessToken = new AccessToken(token, CONSUMER_SECRET);
- accessToken.setExpiresIn(expires_in);
- Weibo.getInstance().setAccessToken(accessToken);
token就是用户的accessToken。
那如何使用用户的accessToken的,调用API呢?
在TestActivity中找到如下方法
这个方法的作用是“获取最新公共微博信息
- private String getPublicTimeline(Weibo weibo) throws MalformedURLException, IOException,
- WeiboException {
- String url = Weibo.SERVER + "statuses/public_timeline.json";
- WeiboParameters bundle = new WeiboParameters();
- bundle.add("source", Weibo.getAppKey());
- String rlt = weibo.request(this, url, bundle, "GET", mWeibo.getAccessToken());
- return rlt;
- }
看“mWeibo”是个什么东西呢?
找到如下代码:
- Weibo mWeibo = Weibo.getInstance();
看完代码,你可能会问,用户的accessToken是怎么保存的呢?又是怎么获得用户accessToken来调用API的呢?
上面代码中有:
- AccessToken accessToken = new AccessToken(token, CONSUMER_SECRET);
那看看AccessToken到底是什么吧!
鼠标放在AccessToken上,按住Ctrl点击鼠标左键,进入这个类
- public class AccessToken extends Token {
- public AccessToken(String rlt){
- super(rlt);
- }
- public AccessToken(String token , String secret){
- super(token, secret);
- }
- }
鼠标放在第二个super上,ctrl+鼠标左键进入
- public Token(String token, String secret) {
- mToken = token;
- mOauth_Token_Secret = secret;
- }
就是这么一个玩意。
未完。。。待续。。。。
转载于:https://blog.51cto.com/3599672/1025619