WP7 SDK说明文档

跳转到: 导航, 搜索

目录

概述

新浪微博Windows Phone 7平台官方SDK包提供给第三方开发者OAuth和XAuth两种登录方式、默认的发送/分享微博界面及其它Open API的URL请求,大大简化了第三方集成微博相关服务的难度。当前微博SDK开发包仅支持WP7芒果版Beta2 Refresh SDK开发环境。集成的OPEN API版本为V3版,支持XML和JSON两种数据交换格式,以后会随着OPEN API的版本升级而提高更新的微博SDK包。

授权模式

OAUTH 授权:OAuth是一种常见的授权模式,用户可以更安全放心的使用用户身份,而不必把用户名和密码透露给第三方。而OAuth2.0是从2006年开始设计OAuth协议的下一个版本,OAuth2.0同时提供Web,桌面和移动应用程序的支持,并较1.0相比整个授权验证流程更简单更安全。也是新浪微博开放平台未来最主要的用户身份验证和授权方式。我们推荐用户使用OAuth2.0鉴权方式,微博SDK对OAuth2.0中的授权页方式和客户端方式(又称用户名密码方式)进行了封装,您只需简单的调用即可获得访问微博接口的授权密钥。


授权页方式:微博sdk中的 “AuthenticationView.xaml” 页面已经对OAuth2.0的授权网页的鉴权处理进行了封装。使用方法见:使用”SDK实例使用说明—Oauth鉴权”


客户端方式:使用封装于 ”ClientOAuth” 中的 “GetAccessToken()” 和 “RefleshAccessToken()” 函数,详细用法见接口说明和“SDK实例使用说明”


SDK使用说明

环境安装

安装Windows Phone 7相关开发环境

引入所需SDK类库

直接引入dll: 按默认的开发向导新建自己的开发工程,找到SinaBase.dll、WeiboSdk.dll两个文件并添加对它们的引用。

接口说明

接口使用前需进行参数设置,详见 ”设置SDK所需参数”

OAuth2.0鉴权--获取access_token、reflesh_token

OAuth2.0鉴权--用reflesh_token更新access_token

发微博/分享微博界面

Complete 事件返回参数:


常用微博数据请求

其它微博数据请求

SDK实例使用说明

设置SDK所需参数

SDK使用及修改必须遵守微博开发者协议,以及相关开源软件协议。 使用SDK的各功能前,需要先设置SDK所需的常量。其中AppKey和AppSecret需要http://open.weibo.com申请, RedirectUri为应用地址,在我的应用中可以编辑、UserAgent为UA值。

OAuth鉴权

1、授权页方式 用户只需设置一些AuthenticationView的事件,然后跳转到该视图页面就可以了。当用户在授权页 ”点击” 授权后OAuth2VerifyCompleted事件将被触发,可以得到access_token。当用户点取消,则OBrowserCancelled事件将被通知,我们此时可以做隐藏或退出该视图,或跳转到其它页面。

    • 界面效果:
    • 示例代码:

2、客户端方式

    • 获取access_token
    • 利用令牌刷新

发送/分享微博界面

微博SDK提供了默认发送/分享微博的界面,既可以自己编写发送界面调用SDK发送方法,也可以直接调用SDK提供的发送界面进行发送。

界面效果:


示例代码:


常用微博数据请求

使用SdkCmdBase的子类作为参数包传入接口所需参数。 实例代码:

其它数据请求

此接口可以满足微博平台的大部分http请求,通过设置RestRequest对象的服务器地址、method、和设置Paramers(AddParameter方法)然后传入SendRequest函数,sdk内部会帮你组包并发送请求。

实例代码:


返回数据处理及错误处理

错误类型


如果errCode为SdkErrCode.ERR时,访问服务器时发送错误。此时错误码会保存在specificCode字段。错误码的详细意义请参见:http://open.weibo.com/wiki/Help/error

处理数据请求时的回调样例代码:


问题反馈

如果您在调用此SDK上有问题,请先参考我们提供的调用范例WeiboSdkSample工程代码,并且WeiboSDK工程本身我们是开源的,这样方便大家了解这个SDK的工作原理,但我们不推荐您修改WeiboSDK工程中的代码,因为随着SDK开发包的升级维护,我们会对这个工程代码进行同步升级。如果有问题可在微博上发含“@预备影帝” 加具体问题内容,或者找到我的微博地址(http://weibo.com/luckytime)后私信我。也可以直接加入开发者交流微群http://q.weibo.com/381841 进行交流。