Facebook等使用苹果源生分享

1.Facebook官方的SDK分享

2.ShareSDK,第三方集成的分享方式

3.网页分享方式分享

4.IOS6之后,苹果自己集成了对于Facebook和Twitter等社交分享进行了集成

1.加入Social.framework

2.#import <Social/Social.h>

3.声明变量SLComposeViewController *mySLComposerSheet;//share对象

注:如果你的当前的app只需要满足IOS6及以上系统的用户的需求(毕竟IOS5及以下的用户量很少),那么就不需要考虑太多,直接使用系统的分享方式。如下:(建议做个异常判断,毕竟崩溃也不好)

- (void)shareFacebook{
    [MBProgressHUD showHUDAddedTo:self.view animated:YES];
    if ([[[[UIDevice currentDevice] systemVersion] substringToIndex:1] intValue]>=6){
        if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]){
            self.mySLComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
            [self.mySLComposerSheet setInitialText:self.productDetailModel.productName];//产品名
            NSURL *imageUrl = [NSURL URLWithString:self.productDetailModel.primaryThumbimage];
            NSData *imageData = [NSData dataWithContentsOfURL:imageUrl];
            [self.mySLComposerSheet addImage:[UIImage imageWithData:imageData scale:1]];//产品图
            [self.mySLComposerSheet addURL:[NSURL URLWithString:self.productDetailModel.productUrl]];//产品地址
            [self presentViewController:self.mySLComposerSheet animated:YES completion:nil];
            [MBProgressHUD hideHUDForView:self.view animated:YES];
        }else{
            [MBProgressHUD hideHUDForView:self.view animated:YES];
            [self.view myMBProgressShowView:@"Not Available Facebook!"];
        }
        [self.mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {
            NSString *output;
            switch (result) {
                case SLComposeViewControllerResultCancelled:
                    output = MBLocalizedString(kFacebookActionCancell);
                    break;
                case SLComposeViewControllerResultDone:
                    output = MBLocalizedString(kFacebookPostSuccess);
                    break;
                default:
                    break;
            }
            if ((result = SLComposeViewControllerResultCancelled)) {
                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:MBLocalizedString(kFacebookMessage) message:output delegate:nil cancelButtonTitle:MBLocalizedString(kFacebookOK) otherButtonTitles:nil];
                [alert show];
            }
        }];
    }

}

同样使用Social框架可以分享到Twitter,新浪微博,腾讯微博,前提是你手机上绑定了这些帐号,否则怎么知道使用哪个帐号分享,在iOS中有专门设置这些应用的地方

//下面是新浪的
-(void)shareToSina{
    //检查新浪微博服务是否可用
    if(![SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]){
        NSLog(@"新浪微博服务不可用.");
        return;
    }
    //初始化内容编写控制器,注意这里指定分享类型为新浪微博
    SLComposeViewController *composeController=[SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
    //设置默认信息
    [composeController setInitialText:@"Kenshin Cui‘s Blog..."];
    //添加图片
    [composeController addImage:[UIImage imageNamed:@"stevenChow"]];
    //添加连接
    [composeController addURL:[NSURL URLWithString:@"http://www.cnblogs.com/kenshincui"]];
    //设置发送完成后的回调事件
    __block SLComposeViewController *composeControllerForBlock=composeController;
    composeController.completionHandler=^(SLComposeViewControllerResult result){
        if (result==SLComposeViewControllerResultDone) {
            NSLog(@"开始发送...");
        }
        [composeControllerForBlock dismissViewControllerAnimated:YES completion:nil];
    };
    //显示编辑视图
    [self presentViewController:composeController animated:YES completion:nil];
}

//苹果源生的框架只支持这几个平台,如果要分享到微信,等可以使用第三方的一些:ShareSDK,友盟等

时间: 2024-08-03 22:07:15

Facebook等使用苹果源生分享的相关文章

上海苹果维修点分享苹果电脑MACBOOK故障维修常见案例

苹果的电子设备无论是外观和性能都是无与伦比的美丽,很多开发者都开始选用苹果电脑macbook.近年来苹果售后维修点来维修苹果电脑的用户也越来越多,我们上海苹果维修点就整理分享了一些苹果电脑MACBOOK故障维修常见案例. Apple苹果电脑故障维修分为配件部分维修和系统部分维修.今天我们就从这两个方面给大家介绍一下常见的维修案例. 苹果电脑配件部分常见的维修故障 第一.Apple苹果笔记本电脑LCD液晶屏维修,LCD液晶屏花屏,屏暗,屏碎裂,LCD屏无背光等:第二.Apple苹果笔记本电脑键盘维

Android Facebook和Twitter登录和分享完整版

最近公司的软件需要改国际版,需要Facebook和Twitter的登录和分享. 本人先用Umeng的第三方社会化分享实现了该功能,但是后来一想问题来了,经过查证.Umeng只在中国和美国有服务器,那也就是说别的国家的人如果用该产品登录和分享可不就成了摆设,这下苦逼了,然后就又重新推倒重来,索性用官方的facebook和twitter来实现登录和分享.具体步骤: 第一,因为中国政府各种坑比墙国外的服务器,导致facebook和twitter访问不了,那第一步就需要FQ,顺便FQ看看苍老师什么的,,

苹果、三星、微软皆中招!Facebook被曝向合作伙伴提供用户隐私

自从Facebook的用户隐私泄露丑闻曝光后,其在社交领域中的影响力正在直线下降.尤其是对于象征着未来的青少年来说,Facebook已经成为了"无趣的老古董"或者是"恶魔",他们正在加速逃离这一平台.皮尤研究中心发布的最新调查报告称,更多的美国青少年(13岁至17岁)正在抛弃Facebook,转而投向Snapchat和YouTube.Instagram等竞争服务. 正所谓祸不单行,就在大众认为用户隐私泄露丑闻将逐渐淡去后,又一事件将Facebook推向风口浪尖上.有

iOS友盟分享--集成Facebook官方SDK

一直用的友盟分享,最近客户提了个新需求要求可以分享到Facebook  想到友盟就有FB分享 万分激动啊.. 但是测试后发现 友盟的Facebook 两种都存在一定问题.. 第一种   使用系统自带Facebook需要先在手机上设置Facebook账号 优点:这种分享简单 不需要配置Facebook AppID 缺点:继承了系统Facebook 不能预填写分享内容的特点(一般的app分享内容是要预填写的  怎么着也得王婆卖瓜对不对..所以这个缺点很致命); 第二种:使用应用内网页分享 (这种分享

facebook分享(含图片)

一.查看当前URL下facebook信息情况 Open Graph Object Debugger<输入URL,查看当前URL是否具有facebook信息>: https://developers.facebook.com/tools/debug/og/object/ Show existing scrape information:查看已配置的facebook信息 Fetch new scrape information:设置新的facebook信息 二.设置对应facebook信息 1.

友盟分享流程

由于苹果审核政策需求,SDK中对未安装客户端平台进行隐藏,因此在未安 装QQ.微信客户端情况下,分享面板中不会出现QQ.Qzone.微信及朋友圈图标,如果需要显示,调用下面的方法,//UMShareToQQ. UMShareToQzone为要显示的平台,传nil显示所有平台 [UMSocialConfig showNotInstallPlatforms:@[UMShareToQQ,UMShareToQzone,UMShareToWechatsession]]; 1.   产品概述 友盟社会化组件

程序猿们带着MAC苹果一起高逼格(MindManager 苹果)

MindManager思维导图软件作为一款影响力最大的可视化思维工具,它的适用范围已经随着版本的不断加强而越来越广,如今MindManager已经能够在苹果世界混的风生水起,生成了"MindManager苹果派". MindManager苹果让你可以组织,管理,以及交流想法和信息来解决问题,推动创新,并且向你的目标持续进展.使用它来创建一个导图,它将从一个中心主题开始,然后为不同分支的想法,记录,图片,任何--甚至超链接和附件. MindManager苹果主要功能: 1.清楚定义你的项

苹果APP游戏及应用程序发布到AppStore详细流程

ios app应用开发完成提交至app store审核流程详解QQ2205357007- 提供苹果APP上架appstore市场咨询及服务,以及苹果开发者证书制作,测试证书制作,真机调试证书,APP市场截图美化,苹果APP被拒解决方案,苹果个人公司企业开发者注册,邓白氏编码申请协助.苹果APP二次开发等等增值服务.  [app代上架]苹果appstore上架_苹果App代上架_专业的苹果官方appstore市场上架服务提供商-qq2205357007--ios内部渠道包过 - [安卓各大市场包过

IT互联财经时事半月谈 苹果终现土豪本色

五月来临,理论上讲应该是一股热浪打来,女生集体脱掉秋裤的节奏,可天不作美,竟然飘起了大雪,估计有冤情.虽然温度骤降,但互联网上热闹非凡:杨元庆捧回爱迪生奖,意义仅有莫言和诺贝尔的1/10;阿里十年磨一剑,终递交招股书:至于苹果.三星这对冤家,一个挥金如土收购,一个砸重金建工厂,忙得不亦乐乎,最后小康提醒大家,去北京旅游,一定要下载"北京公厕App". #联想杨元庆捧回爱迪生奖杯,牛X闪闪#据报道,非盈利性组织爱迪生国际于5月1日颁发了2014年度的"爱迪生奖",联想