欢迎来到天天文库
浏览记录
ID:37708533
大小:379.00 KB
页数:12页
时间:2019-05-29
《Android授权登录新浪微博获取用户个人信息》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Android授权登录新浪微博获取用户个人信息一、准备工作我们都知道,无论是分享到新浪微博,还是获取新浪微博的用户信息,都离不开一样东西,那就是新浪微博的APPID,APPID通过绑定我们应用程序的包名和签名进行识别,可以说它是我们跟新浪微博官方所提供接口进行交互的一个重要令牌,这一点跟QQ、微信接口等访问原理基本是一样的。那么问题来了,APPID到底怎么得到?答案就是你要到新浪微博开放平台http://open.weibo.com/注册一个帐号,填写并创建你的应用。如下图所示:点击创建应用后会出现如下图所示页面,在这个页面中你必须要填写你的Android包
2、名和Android签名,包名就是你应用程序AndroidManifest.xml文件中的package中的字符串,比如你新建了一个名称为“test”的项目,那么你的包名应该是com.example.test了。至于Android签名,你可以在该开放平台下载签名工具apk装到手机,然后打开该apk填写程序包名获取签名,也可以直接在开发工具eclispe中点击Window->Preferences->Android->Build查看,如下图所示,至于其它必要的填写信息,你自己去完善就可以了将所有信息填写完善后我们点击提交审核,注意,只有审核通过的应用才能调用他们
3、提供的API。二、工程准备新建一个工程,包名要跟你上面填写的包名一致。新建完成后下载新浪微博SDK,下载完成后解压,将libs目录下的文件全部拷贝到你的工程libs目录下,将weiboSDKCore_3.1.2.jar包也拷贝到libs目录下,找到AccessTokenKeeper.Java、UsersAPI.java、AbsOpenAPI.java文件并拷贝到你的包中,我把我的工程目录图贴出来,后面我会把整个示例源码放上来。注意上面common中的SinaUserInfo.java是我自己建的,只是用来方便存和取用户信息而已。还有,别忘了在AndroidM
4、anifest.xml中添加权限:三、动手写代码几经波折,下面直接进入正题,贴代码1、SinaUserInfo.java(前面说过,这个类非常简单,只是方便存取用户信息而已)[java]viewplaincopy在CODE上查看代码片派生到我的代码片publicclassSinaUserInfo{privateStringuid;//用户IDprivateStringname;//用户昵称privateStringavatarHd;//用户
5、头像urlpublicSinaUserInfo(){super();//TODOAuto-generatedconstructorstub}publicStringgetUid(){returnuid;}publicvoidsetUid(Stringuid){this.uid=uid;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicStringgetAvatarHd(){returnavatarHd;}publicvoidsetAva
6、tarHd(StringavatarHd){this.avatarHd=avatarHd;}}2.MainActivity.java(这个是核心,先分步讲解,后面直接贴出完整代码)在这个java文件中,授权登录并获取信息的具体流程是这样子的,首先通过我们之前审核通过的APPID来实例化IWeiboShareAPI:[java]viewplaincopy在CODE上查看代码片派生到我的代码片weiboShareAPI=WeiboShareSDK.createWeiboAPI(context,SWB_APP_ID);然后获取OAuth协议信息,并设置授权回调接口
7、:[java]viewplaincopy在CODE上查看代码片派生到我的代码片authInfo=newAuthInfo(context,SWB_APP_ID,SWB_REDIRECT_URL,SWB_SCOPE);ssoHandler=newSsoHandler(MainActivity.this,authInfo);ssoHandler.authorize(newAuthListener());在授权回调接口当中,我们通过利用onComplete方法中的参数values来解析访问令牌accessToken,并通过AccessTokenKeeper这个类将a
8、ccessToken保存,这样我们就完成了授权,紧接
此文档下载收益归作者所有