IOS系统自带社交分享

很多APP中都带有社交分享功能,通过用户的分享,让更多地人去了解和使用这个APP,目前社交分享是移动互联网应用程序推广的最重要手段之一,国内较或的分享平台有微信,IOS6后苹果集成的新浪微博,还有IOS7后集成的腾讯微博。

在IOS中,实现社交分享可以自己编写各个平台的分享代码,但代码量较多,也可以利用IOS自带的Social.framework,更可以利用第三方的分享框架,如友盟,ShareSDK等。接下来先介绍一个系统自带的分享功能。

打开设备或模拟器的偏好设置,可以看到如下

系统需要先登录到微博

项目中需要导入一个系统自带头文件  #import
<Social/Social.h>

我们在屏幕的点击事件中来实现分享到微博

 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    // 首先判断新浪分享是否可用
    if (![SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
        return;
    }
    // 创建控制器,并设置ServiceType
    SLComposeViewController *composeVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
    // 添加要分享的图片
    [composeVC addImage:[UIImage imageNamed:@"Snip20150429_9"]];
    // 添加要分享的文字
    [composeVC setInitialText:@"share my CSDN Blog"];
    // 添加要分享的url
    [composeVC addURL:[NSURL URLWithString:@"http://blog.csdn.net/u011058732"]];
    // 弹出分享控制器
    [self presentViewController:composeVC animated:YES completion:nil];
    // 监听用户点击事件
    composeVC.completionHandler = ^(SLComposeViewControllerResult result){
        if (result == SLComposeViewControllerResultDone) {
            NSLog(@"点击了发送");
        }
        else if (result == SLComposeViewControllerResultCancelled)
        {
            NSLog(@"点击了取消");
        }
    };
}

当点击屏幕的时候可以看到如下

点击post即可将内容分享出去。当然该分享方式具有一定的局限性,所以一般我们都会使用第三方框架。

时间: 2024-11-16 01:15:38

IOS系统自带社交分享的相关文章

ios程序如何实现系统自带的分享

ios系统自带的分享,支持的平台非常有限, 国内的只有 新浪微博和 腾讯微博,但是程序要求不多的话,也可以直接使用系统自带的分享,也比较简单. 首先,需要导入系统自带的框架  #import <Social/Social.h> // 1.判断平台是否可用(就是手机设置里 的新浪微博 和腾讯微博 有没有账号登录) if (![SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) { UIAlertVi

应用程序间跳转 (友盟SSO 授权 与系统自带的分享)

应用程序间跳转的应用场景 使用第三方用户登录,如微信登录,返回用户名和密码 需要用户授权,返回到调用程序,同时返回授权的用户名 应用程序推广,跳转到itunes并显示指定app下载页 第三方支付,跳转到支付APP,如支付宝,微信钱包 显示位置及导航功能时,跳转到第三方地图应用. 打电话.发邮件.发短信.打开网页等,跳转到内置APP程序 应用间的跳转: 1.//url :统一资源占位符 http://baidu.com tel://110 file:///apple/storebock //由 

iOS系统自带的 UIAlertView 自动旋转的实现

这里主要解析 UIAlertView 的几个关键功能的实现: 随着设备屏幕的旋转而旋转: Alert弹出框,使用UIWindow来实现,就是说,不用依赖于当前显示在最前面的UIView. 实现源码参考: http://git.oschina.net/shede333/BMAlertHud 使用UIWindow 弹出一个Alert框,最好新建一个 UIWIndow, 把window.windowLevel = UIWindowLevelAlert,这样就能显示在最前面: 调用[window mak

iOS系统自带的 **UIAlertView** 以及 屏幕自动旋转的实现

iOS系统自带的 UIAlertView 自动旋转的实现 这里主要解析 UIAlertView 的几个关键功能的实现: 随着设备屏幕的旋转而旋转: Alert弹出框,使用UIWindow来实现,就是说,不用依赖于当前显示在最前面的UIView. 实现源码参考: http://git.oschina.net/shede333/BMAlertHud 使用UIWindow 弹出一个Alert框,最好新建一个 UIWIndow, 把window.windowLevel = UIWindowLevelAl

社交网络编程API之iOS系统自带分享

社交网络编程API 社交网络编程主要使用iOS提供的Social框架,目前Social框架主要包含两个类: SLComposeViewController 提供撰写社交信息(如微博信息)的视图控制器,有iOS系统提供UI,就是写入要分享内容的小弹出框. SLRequest封装了HTTP请求,提供了同一的请求社交网络服务的接口,能够直接与社交网路服务通信的能力,没有UI需要自己编写设计. 除了Social框架外,还有可能用到UIActivityViewControlelr和ACAccount.UI

ios 系统自带的菊花简单使用教程

//等待登陆菊花初始化:UIActivityIndicatorView *ActivityIndicator = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite]; //设置菊花的中心点,貌似不能设置菊花的大小,系统自带的有三种样式 ActivityIndicator.center = CGPointMake(100, 100); //添加菊花 [se

iOS开发,系统自带的分享简单实现

由于simulator设置里面没有新浪微博的选项,所以选择了真机调试,成功了.代码不多,包含头文件 没有配置登录信息的话,是没有作用的                                                                                                 具体代码实现 1 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 2 { 3 // 1.判

(八十六)使用系统自带的分享框架Social.framework

使用Social.framework十分简单,可以便捷的分享到主流的社交框架. ①导入主头文件 #import <Social/Social.h> ②以新浪微博为例,首先推断服务是否可用,接着创建分享控制器.调用方法,设置文字和图片.利用block回调. 假设没有分享的账号,系统会自己主动弹出对话框要求用户设置,因此不必开发人员考虑. if (![SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo])

iOS 系统自带JSON解析,NSJSONReadingOptions参数解读

开发中,我们经常需要解析JSON数据,系统提供的 [NSJSONSerialization JSONObjectWithData:[objc dataUsingEncoding:NSUTF8StringEncoding] options:(NSJSONReadingAllowFragments) error:&error]解析方法,需要填写一个NSJSONReadingOptions参数 首先用代码来说明NSJSONReadingMutableContainers的作用: NSString *s