新浪微博 0.0.1

SinaWeibo 0.0.1

测试已测试
Lang语言 Obj-CObjective C
许可 商用
Released最后发布Dec 2014

未声明的所有者 维护。



SinaWeibo 0.0.1

  • 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中,在左侧点击右键,选择将文件添加到 "your_workspace",选择weibo_sdk_oauth/demo/sinaweibo_sdk_oauth_demo.xcodeproj,确认添加;
  3. 此时直接编译将出错,因为在sinaweibo_sdk_oauth_demo/SNAppDelegate.h文件中未声明app_key等三个常量,在Xcode中修改并取消注释//#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进行认证登录。