ShareKit 的扩充

来源:互联网 发布:会计理解 知乎 编辑:程序博客网 时间:2024/05/29 12:36

http://blog.chukong-inc.com/index.php/2012/09/25/sharekit-的扩充/


ShareKit 的扩充

Published on 2012 年 9 月 25 日, by shaoqiang in iOS技术.

首先,感谢王存锴同学的工作,代码相关的实现全是存锴的功劳。

随着iOS6的发布, 最新集成的Facebook和微博分享功能为我们的程序 社交化提供了更方面的方式,但如果我们的应用 想支持旧的版本,就需要考虑旧的应用方式 ,而且我们以前有一个非常好用的ShareKit 这个库了,难道我们需要放弃吗?

当然不是,为什么不做下扩充呢,毕竟ShareKit本身的结构挺不错的,

ShareKit本身的历史就不再讨论了,有兴趣的同学可以在这个链接上面看看–http://getsharekit.com

还有另外一位国内的开发者做了对国内社交网络的支持,大家可以关注一下他的Blog–http://icyleaf.com/2011/05/append-related-services-into-sharekit-from-china

关于iOS6自带的分享功能, 苹果提供的API非常简洁,创建一个ViewController

SLComposeViewController *socialVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

这个ViewController会提供完美的界面,就是WWDC演示分享图片那样。 当然,创建了就需要把它显示出来 ,一样非常简单的工作

[[self currentTopViewController] presentViewController:socialVC animated:YES completion:Nil];

那我们分享的内容在哪体现出来 呢,别着急,看下面的代码,把文字,URL, 图片资源都加载上来了,

if (self.item.text) {

[socialVC setInitialText:self.item.text];

}else if(self.item.title){

[socialVC setInitialText:self.item.title];

}

if (self.item.URL) {

[socialVC addURL:self.item.URL];

}

if (self.item.image) {

[socialVC addImage:self.item.image];

}

 

以上的部分是关于分享代码内部的详细分析,下面来说如何判断iOS6的新功能是否可行呢,下面的函数可以帮你搞定。

- (BOOL)FacebookFrameworkAvailable {

if (NSClassFromString(@”SLComposeViewController”)) {

return YES;

}

return NO;

}

讨论完上面的内容 ,做为开发者 , 那我们需要在程序调用中做什么事情呢?

如果以前用的就是ShareKit, 那恭喜你,代码不用做任何的修改, 简单的替换文件就OK了。

由于附件只支持2M的大小, 我不能把整个ShareKit的项目工程上传上来,我会把它上传到SVN上面。附件是支持Facebook的两个头类文件,过两天我会把支持Weibo分享的包上传上来。

原创粉丝点击