一、如何实现社交分享

在iOS中,实现“社交分享”的方法
1.自己编写各个平台的分享代码(代码量较多)
 
2.利用iOS自带的Social.framework
 
3.利用第三方的分享框架
百度社会化分享组件:http://developer.baidu.com/soc/share

(百度还有个“社会化登录组件”:http://developer.baidu.com/soc/login

二、Social.framework使用步骤

判断服务是否可用

[SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]

弹出分享内容输入界面

SLComposeViewController *cc = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];

[self presentViewController:cc animated:YES completion:nil];

额外设置

[cc setInitialText:@"测试文字"]; // 初始化文字

[cc addImage:[UIImage imageNamed:@"lufy"]]; // 配图

三、社交平台简介

1.Twitter——推特

始于2006年,目前有2亿用户
 
Twitter是一个广受欢迎的社交网络服务,允许用户将自己的最新动态和想法以移动电话中的短信息形式(微博只允许140字的由来)发表推文
 
名字的来历,Twitter是一种鸟叫声,创始人认为鸟叫是短、频、快的,符合网站的内涵
 
iOS 5中提供了Twitter API
 
iOS 6中将Twitter集成入Social.framework
 
2.Facebook——非死不可
Facebook是世界排名第一的照片分享站点,每天上传八百五十万张照片
 
2004年2月4推出,截至2012年9月,网站内已有超过十几亿个活跃用户,用户上传的相片数量超过2190余亿张
 
是全球第一大社交网站,创始人是84年出生的扎克伯格,2008年已经拥有135亿身家
 
Facebook提供有应用程序接口(开放接口)
 
iOS中的Accounts.framework与Social.framework结合可以对Facebook中的媒体服务做更加精准的控制
 
3.LinkedIn
商业客户导向的社交网络服务网站,成立于2002年12月并于2003年启动
2011年1月,LinkedIn有超过9000万的注册用户
2012年1月,LinkedIn已经超过1.5亿的注册用户
 
目的是让注册用户维护他们在商业交往中认识并信任的联系人,这些人被称为“人脉”(Connections)。用户可以邀请他认识的人成为人脉
 
iOS 7中将LinkedIn集成入Social.framework
 

代码:

 //
// ViewController.m
// IOS_0404_系统自带分享
//
// Created by ma c on 16/4/4.
// Copyright © 2016年 博文科技. All rights reserved.
// #import "ViewController.h"
#import <Social/Social.h> @interface ViewController () @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor cyanColor];
} - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
//1.判断服务是否可用
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
NSLog(@"分享可用");
}
//2.创建分享控制器
SLComposeViewController *composeVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
//设置默认数据
[composeVC setInitialText:@"呵呵哈哈"];
[composeVC addImage:[UIImage imageNamed:@""]];
//3.弹出分享控制器
[self presentViewController:composeVC animated:nil completion:nil];
//4.监听分享状态
composeVC.completionHandler = ^(SLComposeViewControllerResult result){ if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"取消发送");
} else {
NSLog(@"发送成功");
} }; } @end

IOS-社会化分享的更多相关文章

  1. iOS社会化分享(干货)

    一.苹果原生集成的社会化分享 1.哪些平台 (1)Twitter (2)FaceBook (3)Flickr (4)Vimeo (5)新浪微博  :iOS6 (6)腾讯微博 : iOS7 2.框架 : ...

  2. iOS - 社会化分享-微信分享,朋友圈分享

    我仅仅做了文字和图片分享功能 1. TARGETS - Info - URL Types identifier -> weixin URL Schemes ->  应用id 2.在AppD ...

  3. iOS快速集成友盟社会化分享功能(v6.1.1)

    1.  U-Share SDK集成 1.1 下载U-Share SDK 通过iOS社会化组件选择所需的社交平台后进行下载,下载链接http://dev.umeng.com/social/ios/sdk ...

  4. QF——iOS第三方登录和社会化分享

    QQ登录的流程: 1.下载SDK,并添加到项目中: 2.添加SDK需要的依赖库,以及配置文件: 3.重写APPDelegate的方法handleOpenURL和openURL: 4.实现Tencent ...

  5. iOS - Share 分享/第三方登录

    1.系统方式创建分享 按照下图在 Info.plist 文件中将 Localization native development region 的值改为 China.如果不设置此项弹出的分享页面中显示 ...

  6. 在Android Studio中使用shareSDK进行社会化分享(图文教程)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  7. [Xcode 实际操作]八、网络与多线程-(24)社会化分享功能开发包的安装和配置:微信、QQ、微博

    目录:[Swift]Xcode实际操作 本文将演示如何在开放平台注册应用,并获得相关的密钥信息,用于实现后面文章的微博分享功能. 一.新浪微博开放平台 [登录]->[微服务]->[粉丝服务 ...

  8. iOS 6分享列表——UIActivityViewController详解

    iOS 6分享列表——UIActivityViewController详解 2013-06-03 01:42:33     发表评论 在iOS 6之后提供了一个分享列表视图,它通过UIActivity ...

  9. Xamarin.Android 绑定友盟社会化分享组件

    Xamarin.Android 绑定友盟社会化分享组件 最近在开发博客园Android App的时候需要用到友盟社会化分享组件,在github上搜了一下都没有找到最新版本绑定好的项目,就自己动手来绑定 ...

  10. 纯CSS3实现的顶部社会化分享按钮

    今天要分享一款纯CSS3实现的社会化分享按钮,它放置在网页的顶部,你可以选择将它固定在网页顶部,这样对用户分享内容就十分方便.这些社会化分享按钮的图标文件来自google和bootstrap的字体文件 ...

随机推荐

  1. Python__return

    return的注意点: return返回的值, 没有任何类型限制 return是函数结束的标志,函数内可以写多个return,但执行一次,函数就立刻结束,并把return后的值作为本次调用的返回值.

  2. Linux(8)- nginx+uWSGI+virtualenv+supervisor 发布web服务器

    一.理论梳理 WSGI是web服务器的网关接口,它是一个规范,描述了web服务器(下图中的WEB server)如何与web应用程序(下图中的Application)通信,以及web应用程序如何链接在 ...

  3. 【CODEFORCES】 B. Random Teams

    B. Random Teams time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...

  4. 自己定义图片的progressbar

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zpf8861/article/details/36183455 Android系统自带的Progre ...

  5. 01 javaSe 01 抽象类和接口

      抽象类 接口   目录(?)[-] 1 抽象类与接口是面向对象思想层面概念不是程序设计语言层面概念 2 抽象类是本体的抽象接口是行为的抽象 3 C中抽象类与接口的探讨     目录(?)[+]   ...

  6. [ Error 分析] Comparison method violates its general contract!

    public static void main(String[] args) { List<Long> ret = new ArrayList<>(); int n = 103 ...

  7. begoo——对象的CRUD操作

    如果已知主键的值,那么可以使用这些方法进行CRUD操作 对object操作的四个方法Read/Insert/Update/Delete o := orm.NewOrm() user := new(Us ...

  8. CodeForces - 920F SUM and REPLACE (线段树)

    题意:给N个数M次操作,(1<=N,M<=3e5, 1<=ai<=1e6),1是使[L,R]中的每个元素变成其因子的个数之和:2是求[L,R]区间之和 分析:看上去就很线段树的 ...

  9. koa2.0富文本编辑器的选择历程

    本人学习vue和koa2.0,做了一个简单的个人博客,博客自然会需要富文本编辑器的选择,由于nodejs和koa2.0,于是便开始了不断尝试的历程. 一.ueditor 刚开始在百度搜索,自然第一个发 ...

  10. C# 获取当前星期几

    private static string GetWeekName() { string weekName = ""; switch (DateTime.Now.DayOfWeek ...