使用ShareKit一键分享到Facebook,Twitter等平台

简介: ShareKit是iPhone开发的第三方接口,允许你一键分享文字,图片,网址,文件到facebook,twitter,delicious,tumblr,google reader等第三方的网站。   下面是下载地址: (1) Download : http://getsharekit.

ShareKit是iPhone开发的第三方接口,允许你一键分享文字,图片,网址,文件到facebook,twitter,delicious,tumblr,google reader等第三方的网站。

 

下面是下载地址:

(1) Download : http://getsharekit.com/d/ShareKit.0.2.1.zip 
(2) Github : http://github.com/ideashower/sharekit/

 

下载之后按照官方提示,把整个ShareKit文件夹拖入工程文件中;如下:

 

 

接下来要对他进行一些详细的配置,如下:

一、SHKConfig.h文件的配置

 

#define SHKMyAppName            @"App name" 
#define SHKMyAppURL             @"itunes address" 

 


二、第三方平台的API key的配置

 

1.Fackbook的配置

(1)在facebook的developers中心中申请创建一个Application。申请地址如下:(http://www.facebook.com/developers/

(2)将上面生成的Key填写在对应的SHKConfig.h文件中的对应的定义里:

#define SHKFacebookUseSessionProxy        NO 
#define SHKFacebookKey                    @"xxxx" 
#define SHKFacebookSecret                 @"xxx" 
#define SHKFacebookSessionProxyURL        @"" // left it blank here 


2.Twitter的配置

(1)同Facebook一样配置一个application,地址为:(http://dev.twitter.com/apps/new)

(2)将申请生成的Key填写在SHKConfig.k文件对应的定义里:

#define SHKTwitterConsumerKey        @"xxx" 
#define SHKTwitterSecret             @"xxx" 
#define SHKTwitterCallbackUrl        @"itunes address" 
#define SHKTwitterUseXAuth           0 // To use xAuth, set to 1 
#define SHKTwitterUsername           @""  // left it blank here , if use xAuth 


3.其他的诸如Bit.ly,Read it Later等都可以上相应的网站注册API Key,然后在SHKConfig.h文件中找到相对应的定义填入进去。其中Tumblr和Google Reader是不需要配置API Key的。

三、如何使用:

调用之后如下:

 

因为我是只要分享到Facebook,不要其他的,所以需要修改他里面的源文件。修改步骤如下:

(1)在要调用分享的button里面调用如下方法,把要传递的url放入:

- (void)share:(id)sender

{

      NSURL *url = [NSURL URLWithString:@"http://getsharekit.com"];

      SHKItem *item = [SHKItem URL:url title:@"ShareKit is Awesome!"];

   

      // Get the ShareKit action sheet

      SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];

   

    [actionSheet showFromToolbar:self.navigationController.toolbar];

 

}

 

(2)在SHK.m中修改:+ (NSArray *)favoriteSharersForType:(SHKShareType)type方法:如下:

 

+ (NSArray *)favoriteSharersForType:(SHKShareType)type

{    

      NSArray *favoriteSharers = [[NSUserDefaults standardUserDefaults] objectForKey:[NSString stringWithFormat:@"%@%i", SHK_FAVS_PREFIX_KEY, type]];

           

      // set defaults

      if (favoriteSharers == nil)

      {

            switch (type)

            {

                  case SHKShareTypeURL:

                         favoriteSharers = [NSArray arrayWithObjects:@"SHKFacebook",nil];

                         break;

                        

                  case SHKShareTypeImage:

                         favoriteSharers = [NSArray arrayWithObjects:@"SHKMail",@"SHKFacebook",@"SHKCopy",nil];

                         break;

                        

                  case SHKShareTypeText:

                         favoriteSharers = [NSArray arrayWithObjects:@"SHKMail",@"SHKTwitter",@"SHKFacebook", nil];

                         break;

                        

                  case SHKShareTypeFile:

                         favoriteSharers = [NSArray arrayWithObjects:@"SHKMail", nil];

                         break;

            }

           

            // Save defaults to prefs

            [self setFavorites:favoriteSharers forType:type];

      }

     

      // Make sure the favorites are not using any exclusions, remove them if they are.

      NSArray *exclusions = [[NSUserDefaults standardUserDefaults] objectForKey:@"SHKExcluded"];

      if (exclusions != nil)

      {

            NSMutableArray *newFavs = [favoriteSharers mutableCopy];

            for(NSString *sharerId in exclusions)

            {

                  [newFavs removeObject:sharerId];

            }

           

            // Update

            favoriteSharers = [NSArray arrayWithArray:newFavs];

            [self setFavorites:favoriteSharers forType:type];

           

            [newFavs release];

      }

     

      return favoriteSharers;

}

(3)在SHKActionSheet.m文件中注释掉一下语句:

// Add More button

      [as addButtonWithTitle:SHKLocalizedString(@"More...")];

 

// More

      else if (buttonIndex == sharers.count)

      {

            SHKShareMenu *shareMenu = [[SHKCustomShareMenu alloc] initWithStyle:UITableViewStyleGrouped];

            shareMenu.item = item;

            [[SHK currentHelper] showViewController:shareMenu];

            [shareMenu release];

      }

这样运行之后就可以如上图所示,只分享到facebook,其他的具体都可以参照以上。

今天的第三方接口ShareKit就讲解到这里,欢迎大家支持哈。

共同的事业,共同的斗争,可以使人们产生忍受一切的力量。 —— 奥斯特洛夫斯基
目录
相关文章
|
JavaScript Java Android开发
Cocos Creator Android 平台 Facebook 原生登录(二)
Cocos Creator Android 平台 Facebook 原生登录
213 0
|
开发工具 Android开发 数据安全/隐私保护
Cocos Creator Android 平台 Facebook 原生登录(一)
Cocos Creator Android 平台 Facebook 原生登录
523 0
AppsFlyer 研究(十五)SRN平台 -Facebook对接配置
AppsFlyer 研究(十五)SRN平台 -Facebook对接配置
185 0
|
机器学习/深度学习 人工智能 自然语言处理
Facebook发布聊天机器人平台,Bots或将取代App
Facebook 正式宣布在Messenger 上推出聊天机器人API——Messenger Platform。通过这个平台,开发者可以建构出商业应用的聊天功能,聊天机器人可以自动识别客户需求并立刻给予回复。Facebook相信,加入了聊天机器人的 Messenger 将变成一个商家与其客户互动的主要渠道。它拥有的一整套人工智能和真人介入体系,使它将代替800电话,成为商业、客服甚至可能是媒体的主要新渠道。
480 0
Facebook发布聊天机器人平台,Bots或将取代App
|
双11 iOS开发
Facebook推出全线支付服务Facebook Pay;果冻有家 3000万的95后社交共享住房平台
果冻有家是最近新面世的一款租房APP。这款标识为“共享、社交、住房平台”的APP
460 0
|
机器学习/深度学习 并行计算 算法