腾讯微博分享 SDK开发流程

亦凉 2022-08-21 09:51 421阅读 0赞

1 将下载好的sdk包添加到程序中

2 在程序中设置好你的app key以及app secret

3 在需要分享的地方,先通过app key以及app secret获取令牌号token key 以及 token Secret

将获取的令牌信息保存到程序中

4 然后创建一个UIWebView,用于发送申请绑定的界面,通过令牌号,提示用户输入账号和密码进行绑定

#define VERIFY_URL @”http://open.t.qq.com/cgi-bin/authorize?oauth\_token=“

//创建webview

mWebView = [[UIWebViewalloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 480.0f)];

mWebView.delegate = self;

[self.viewaddSubview:mWebView];

//加载url

NSString *url = [NSString stringWithFormat:@”%@%@”, VERIFY_URL, appDelegate.tokenKey];

NSURL *requestUrl = [NSURL URLWithString:url];

NSURLRequest *request = [NSURLRequest requestWithURL:requestUrl];

[mWebViewloadRequest:request];

5 用户在绑定界面中的点击事件,可以用 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 这个函数还捕捉到。

6 在上面的web处理函数中,,首先要判断里面的 verifier是否为空,如果不为空,就需要 通过 QWeiboSyncApi类的getAccessTokenWithConsumerKey函数,获取令牌之.如果verfier为空,则可以通过网页的形式进行号码授权

//判断代码:

NSString *query = [[request URL] query];

NSString *verifier = [self valueForKey:@”oauth_verifier” ofQuery:query];

if (verifier && ![verifier isEqualToString:@””])

//重新获取令牌值并解析的代码

QWeiboSyncApi *api = [[[QWeiboSyncApialloc] init] autorelease];

NSString *retString = [api getAccessTokenWithConsumerKey:appDelegate.appKey

consumerSecret:appDelegate.appSecret

requestTokenKey:appDelegate.tokenKey

requestTokenSecret:appDelegate.tokenSecret

verify:verifier];

NSLog(@”\nget access token:%@”, retString);

//解析返回的令牌值

[appDelegate parseTokenKeyWithResponse:retString];

7 发送文字或者图片信息到微博中

//异步发送信息

QWeiboAsyncApi *api = [[[QWeiboAsyncApialloc] init] autorelease];

self.connection= [api publishMsgWithConsumerKey:appDelegate.appKey

consumerSecret:appDelegate.appSecret

accessTokenKey:appDelegate.tokenKey

accessTokenSecret:appDelegate.tokenSecret

content:@”QQ I hate you as so fucking sdk!” //content就是需要发送的文字信息

imageFile:hasImage ? self.fileUrl : nil //fileUrl就是需要上传的图片的路径

resultType:RESULTTYPE_JSON //返回数据的格式,默认是json

delegate:self];

//从相册中选取到的相片,会通过转换函数,将相册中选中的数据直接放到本地的temp文件夹中,然后保存到本地,将fileUrl更新为当前的地址

//如果是使用网络图片,则直接将图片的路径添加到函数中

8 上面的url请求也是一个http的请求,所以可以通过http的委托函数捕捉到返回数据

- (void) connectionDidFinishLoading:(NSURLConnection *)connection

以上就是开发流程,希望能和大家一起交流开发过程中的问题。。。花了两天的时间,终于搞定新浪和腾讯的分享问题。

发表评论

表情:
评论列表 (有 0 条评论,421人围观)

还没有评论,来说两句吧...

相关阅读

    相关 挂了

    ![0_1321153205SQ68.gif][] 如此强大的公司,居然也能够把微博给搞挂,不知道相关的技术负责人得背多少故障分了。 本文出自:[冯立彬的博客][Link