zoukankan      html  css  js  c++  java
  • iOS学习笔记35 社交分享

    ###一、社交分享 现在很多应用都内置“社交分享”功能,可以将看到的新闻、博客、广告等内容分享到微博、微信、QQ、人人网等,其实从iOS6.0开始苹果官方就内置了Social.framework专门来实现社交分享功能,利用这个框架开发者只需要几句代码就可以实现内容分享。

    #####Social框架使用步骤:

    1. 导入Social.framework框架,添加头文件
    #import <Social/Social.h>
    复制代码
    1. 创建分享内容编辑控制器SLComposeViewController
    2. 设置分享内容、图片、超链接等
    3. 设置发送后的回调
    4. 弹出控制器,进行显示

    ######Social框架支持的分享:

    NSString *const SLServiceTypeTwitter;//Twitter分享,iOS6以上支持
    NSString *const SLServiceTypeFacebook;//Facebook分享,iOS6以上支持
    NSString *const SLServiceTypeSinaWeibo;//新浪微博分享,iOS6以上支持
    NSString *const SLServiceTypeTencentWeibo;//QQ分享,iOS7以上支持
    复制代码

    ######必须先在设置中设置分享账号,Social才知道是哪个账号进行发送的:

    ######以下是新浪微博分享的简单示例:

    #import "ViewController.h"
    #import <Social/Social.h>
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        //分享到新浪微博
        [self shareToSinaWeibo];
    }
    /* 分享到新浪微博 */
    - (void)shareToSinaWeibo{
        //检测新浪微博服务是否可用
        if (![SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
            NSLog(@"新浪微博服务不可用");
            return;
        }
        //创建分享内容编辑控制器,指定类型为新浪微博
        SLComposeViewController *compose = 
            [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
        //设置分享内容
        [compose setInitialText:@"执着-执念的简书博客"];
        //设置分享图片
        [compose addImage:[UIImage imageNamed:@"image.jpg"]];
        //设置超链接
        [compose addURL:[NSURL URLWithString:@"http://www.jianshu.com/users/1e5629b22b63/latest_articles"]];
        //设置回调
        __block SLComposeViewController *blockController = compose;
        compose.completionHandler = ^(SLComposeViewControllerResult result){
            if (result == SLComposeViewControllerResultDone) {
                NSLog(@"发送完成");
            } 
            //弹回
            [blockController dismissViewControllerAnimated:YES completion:nil];
        };
        //弹出控制器
        [self presentViewController:compose animated:YES completion:nil];
    }
    @end
    复制代码

    ###二、第三方框架 从上面可以看出,苹果官方默认支持的分享并不太多,特别是对于国内的应用只支持新浪微博和腾讯微博,那么如果要分享到微信、人人、开心等等国内较为知名的社交网络怎么办呢? 目前最好的选择就是使用第三方框架,因为如果要自己实现各个应用的接口还是比较复杂的。 ######以下是使用得比较多的第三方分享框架:

    1. 友盟社会化组件
    1. ShareSDK

    具体使用参考对应的SDK文档,这里就不讲了。

    #####有什么问题在下方评论区中提出!O(∩_∩)O哈!

    转载于:https://juejin.im/post/5b126d87e51d45068a6c9185

  • 相关阅读:
    如何在ubuntu里面使用JNI?
    sql server 关键字一
    自己编写的 objectDataSource 配合 GridView 实现分页...
    委托和匿名委托的比较
    实现 IEnumerable IEnumator 接口的类,可直接用作 Gridivew 的数据源
    ASP.NET 中的页面事件执行顺序
    泛型,集合的根本区别
    匿名委托的示例,贴一下以供参考...
    ajax "Sys 未定义" 的问题解决方法
    抽象工厂模式(C#)
  • 原文地址:https://www.cnblogs.com/twodog/p/12136765.html
Copyright © 2011-2022 走看看