关于Android使用新浪API的一些说明
来源:互联网 发布:电脑麦克风调音软件 编辑:程序博客网 时间:2024/06/05 00:19
通常获得新浪Oauth2AccessToken以后,可以用Demo中的AccessTokenKeeper类将Token保存在SharedPreferences中。
DEMO中并未给出uid的获得方式,可以通过两种方式获取。
1.在WeiboAuthListener中的onComplete(Bundlevalues)回调方法,调用values.getString("uid")获得。
2.通过新浪API接口,传入token获得Json。
新浪SDK的文档给出的信息量较少,很大程度上,我们需要自己摸索。
在调用API接口时,发现很多疑问。
1.在使用自己的HttpUtils类去用GET方式请求Json,发现会有IOException。
2.Parameters为自定义的类,存放在Arraylist中。
3.在4.0版本不可以在MainThread中进行网络操作,可以用AsyncTask或者另起线程来进行异步操作。
至于为什么报异常,需要进一步验证。
解决办法:
1.不要自己去写HttpUtils,应该使用新浪本身的HttpManager,调用其openUrl()方法,获得Json。
2.openUrl()中需要传递WeiboParameters,用add()方式向其添加请求参数。
3.可以用JSONObject去解析Json数据,需要导入Json的jar包来支持。
以下代码可以作为参考(通过新浪API接口传入Token获取当前用户uid)
public void getUserInfo(String token) {String url = "https://api.weibo.com/2/account/get_uid.json";WeiboParameters weiboParameters = new WeiboParameters();weiboParameters.add("access_token", token);try {String result = HttpManager.openUrl(url,HttpManager.HTTPMETHOD_GET, weiboParameters, null);JSONObject obj = new JSONObject(result);Log.e("uid",obj.getInt("uid")+"");} catch (WeiboException e) {e.printStackTrace();} catch (JSONException e) {e.printStackTrace();}}
以上所有内容均为个人观点,若有疑问和意见,欢迎留言讨论。
- 关于Android使用新浪API的一些说明
- Android 一些Api说明
- 关于android控件PopupMenu使用的一些说明
- 关于怎么使用Parse的说明API
- 关于新浪微博android SDK的一些总结
- 在Android使用新浪微博的开发平台API
- Shell API 的一些说明
- android 使用新浪微博API接口
- 关于jena的API说明
- Android调用新浪天气API的问题
- Android中关于系统Intent的一些应用的说明
- 新浪微博python API的使用
- 使用新浪API实现天气状况的显示
- 关于Android RenderScript 的详细说明和一些实用文档
- 关于Android RenderScript 的详细说明和一些实用文档
- 关于Android RenderScript 的详细说明和一些实用文档
- 关于WEB使用media player的一些说明
- 关于java中switch使用的一些说明
- 改变AWS EMR中的Ganglia配置:每1秒监视一次
- windows查看进程内存使用记录
- hdu 1495 非常可乐(简单的的bfs)
- Attribute "column" must be declared for element type "property"解决办法
- CF 6 A - Triangle
- 关于Android使用新浪API的一些说明
- How to detect and avoid memory and resources leaks in .NET applications
- dySE:一个 Java 搜索引擎的实现,第 2 部分: 网页预处理
- Windows用户自定义消息实现程序间通信
- Java接口
- c# 时间格式转换大全
- 全角符号输入导致的编译错误
- dySE:一个 Java 搜索引擎的实现,第 3 部分: 查询服务
- hello, world!