[分享]Cocos2dX中使用ShareKit的简明流程

  • 本帖最后由 luckykiddie 于 2012-7-25 19:30 编辑 *

{:soso_e112:}此流程仅针对之前使用过sharekit的兄弟,作为参考;没有用过sharekit的兄弟,还需要多多了解。

本文涉及两个版本的sharekit,为了区分我把它们分别叫http://getsharekit.com/和https://github.com/ShareKit/ShareKit/。

之前在用v1做游戏分享的时候,遇到了很多问题,大多都已经解决;随着问题越来越多,越来越让人困惑,所以在知道v1的作者早在一年多前就停止更新的时候,果断放弃v1。

v2看起来比较庞大,增加了很多新的服务(其实就是无用的服务),在一番step-by-step和摸索之后,成功在Cocoa Touch和Cocos2dx中使用上了。在cocos2dx和Cocoa Touch上的配置基本没有区别,本文以cocos2dx中的配置为例。
(一些诸如facebook/twitter app申请过程略去,大家可自行google)

1)参考https://github.com/ShareKit/ShareKit/wiki/Installing-sharekit,克隆一份到本地,并导出(注:只做下载和导出,后面的步骤暂时不必管)
2)由于v2里服务众多,并且很多都是用不到的,所以我去掉了很多不用的服务,仅留有限的几个;同时相应的修改了Core里的SHKShares.plist;将文件加到项目中,并添加链接库

3)编译成功后,参考https://github.com/ShareKit/ShareKit/wiki/Installing-sharekit中的"Step 4: Configuration",派生一个SHKConfiguratator出来,做必要的重写,并在AppController中设置。

4)参考https://github.com/ShareKit/ShareKit/wiki/Installing-sharekit中的"Step 7: Implement SSO",照着来即可。

完成以上步骤,sharekit就配置好了,接下来是使用。
5)因为sharekit是基于Cocoa Touch的,所以需要有一个UIViewController来显示;我是直接对RootViewController进行扩展。为尽量不修改初始项目文件,我为RootViewController创建了一个Wrapper的Category文件RootViewController+Wrapper.h,提供一个获取当前RootViewController的单例方法;AppController中引入RootViewController+Wrapper.h,去掉成员viewController,用单例方法来获取并传给window。

6)参考https://github.com/ShareKit/ShareKit/wiki/Installing-sharekit中的"Step 5: Calling Sharekit",将SHKActionSheet在RootViewController的view中展示即可。

注:找到SHK.m中的SHKLocalizedStringFormat方法,更正path,即去掉stringBy…这个调用。

传不了文件,悲剧

楼主可以在其他地方,比如自己的博客 发表 保存文件 等等~~~