iOS中facebook与twitter分享问题总结(2)

 上次总结了facebook和twitter分享的三种方式:1.Facebook官方的SDK分享 2.ShareSDK,第三方集成的分享方式 3.网页分享方式分享

其实还漏了一种,那就是IOS6之后,苹果自己集成了对于Facebook和Twitter等社交分享进行了集成。
具体的使用方法如下:

首先:加入Social.framework。
在使用分享的那个类的头文件加入
#import <Social/Social.h>
声明变量: SLComposeViewController *slComposerSheet;
使用的时候主要的要点:
如果你的当前的app只需要满足IOS6及以上系统的用户的需求(毕竟IOS5及以下的用户量很少),那么就不需要考虑太多,直接使用系统的分享方式。如下:(建议做个异常判断,毕竟崩溃也不好)
//facebook分享
if ([[[[UIDevice currentDevice] systemVersion] substringToIndex:1] intValue]>=6)
 {
        // if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
        //{
        slComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
        [slComposerSheet setInitialText:@"share facebook"];
        [slComposerSheet addImage:[UIImage imageNamed:@"ios6.jpg"]];
        [slComposerSheet addURL:[NSURL URLWithString:@"http://www.facebook.com/"]];
        [self presentViewController:slComposerSheet animated:YES completion:nil];
        //}
        [slComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {
            NSLog(@"start completion block");
            NSString *output;
            switch (result) {
                case SLComposeViewControllerResultCancelled:
                    output = @"Action Cancelled";
                    break;
                case SLComposeViewControllerResultDone:
                    output = @"Post Successfull";
                    break;
                default:
                    break;
            }
            if (result = SLComposeViewControllerResultCancelled)
            {
                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Weibo Message" message:output delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
                [alert show];
            }
        }];
        
    }
else
{
       //ios5.0极其以下的系统需要做的处理,可以直接弹出提示框
        如果确定需要支持分享,则建议使用网页分享的方式。
    }

twitter和facebook的分享类似,需要把SLServiceTypeFacebook这个改为SLServiceTypeTwitter即可

如果用这种分享处理IOS6以上系统,然后用网页分享处理IOS5及以下的系统,那也是很不错的。
但是个人建议,如果你们公司对于源码要求不高,可以尝试用ShareSDK这种第三方的分享模式,简单快捷,分享这个功能最多需要一天时间就行了,里面包含国内国外基本上所有的社交分享方式。谁用谁知道。

还有一种组合方式是:是使用Facebook的官方的SDK,twitter使用网页分享
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值