SinaWeibo 0.0.1

SinaWeibo 0.0.1

TestsTested
LangLanguage Obj-CObjective C
License Commercial
ReleasedLast Release Dec 2014

Maintained by Unclaimed.


Downloads

Total5,702
Week0
Month0

Installs

Apps142
Test Targets2
powered by Segment

GitHub

Stars309
Watchers58
Forks280
Issues32
Contributors3
Pull Requests1

Code

Files7
LOCLines of Code 1,239


SinaWeibo 0.0.1

  • By
  • mobileresearch

概述

此版本微博SDK实现了Oauth2.0认证登录功能,将较复杂的认证签名过程隐藏起来,并将OPEN api的调用进一步包装, 方便第三方应用登录、访问。

名词解释

  • app_key: 微博开放平台上申请第三方应用时分配的app_key
  • app_secret: 微博开放平台上申请第三方应用时分配的app_secret
  • app_redirect_uri: 第三方应用申请完成后,自定义的回调页地址。
  • access_token: 表明用户的身份,用于微博OPEN API的调用。
  • expiration_time: 过期时间,用于判断token值是否过期。

    注:app_redirect_uri,即第三方应用登录回调页,可在微博开放平台上找到,具体路径:开放平台->我的应用->应用信息->高级信息->OAuth2.0授权设置->授权回调页;若显示未填写,请设置此属性,否则将造成SDK登陆时错误。

demo使用

  1. 将整个目录下载拷贝至自己的工作空间中;
  2. 打开Xcode,左侧点击右键,选择Add Files to "your_workspace",选中weibo_sdk_oauth/demo/sinaweibo_sdk_oauth_demo.xcodeproj,确认添加;
  3. 此时直接编译将出错,因为未声明app_key等三个常量,Xcode中修改sinaweibo_sdk_oauth_demo/SNAppDelegate.h文件,将//#define kAppKey @"your app_key"等三行的注释去掉,并根据自己应用的属性给kAppKey等常量赋值;
  4. 编译并在模拟器上运行;
  5. demo只有一个页面,包括登录/退出/获取用户信息/发表状态等按钮;运行后需要先登录才能进行其他操作。

添加SDK至自己工程中

第三方应用使用SDK需要完成DEMO中包含的基本工作。创建自己的工程,并将weibo_sdk_oAuth/src目录下JSONKitSinaWeibo两个文件夹拷贝至自己工程目录中并添加至工程。

实现Oauth2.0认证登录需实现

  1. 定义app_key,app_secret,app_direct_uri三变量,初始化SinaWeibo对象时使用;
  2. 参照demo实现SinaWeiboDelegate协议,实现后类的对象在初始化SinaWeibo对象时使用;
  3. 创建SinaWeibo对象并初始化,调用[SinaWeibo login]登录,并在实现的SinaWeiboDelegate中监听登录结果;
  4. 退出时调用[SinaWeibo logout],同样在实现的SinaWeiboDelegate中监听退出结果,其操作可参考DEMO中的实现。

OPEN API的调用

  1. 实现SinaWeiboRequestDelegate协议;
  2. 调用SinaWeibo中- (SinaWeiboRequest *)requestWithURL:.. params:.. httpMethod:.. delegate:..方法实现OPEN API的调用,调用前需初始化url(OPEN API url,以获取用户信息为例,下同,赋值为@"users/show.json"), params(调用接口参数,初始化为[NSMutableDictionary dictionaryWithObject:sinaweibo.userID forKey:@"uid"]),httpMethod(http类型,赋值为@"GET"),_delegate(SinaWeiboRequestDelegate对象);
  3. 调用完成后SDK将访问结果通过SinaWeiboRequestDelegate对象返回给第三方应用,- (void)request:.. didFailWithError:..接收失败信息,- (void)request:.. didFinishLoadingWithResult:..接收成功的访问结果。

适用范围

使用此SDK需满足以下条件:

  • IOS平台
  • 在新浪微博开放平台注册并创建应用
  • 已定义本应用的授权回调页

注: 关于授权回调页对移动客户端应用来说对用户是不可见的,所以定义为何种形式都将不影响,但是没有定义将无法使用SDK认证登录。