很多APP中都带有社交分享功能,通过用户的分享,让更多地人去了解和使用这个APP,目前社交分享是移动互联网应用程序推广的最重要手段之一,国内较或的分享平台有微信,IOS6后苹果集成的新浪微博,还有IOS7后集成的腾讯微博。 在IOS中,实现社交分享可以自己编写各个平台的分享代码,但代码量较多,也可以利用IOS自带的Social.framework,更可以利用第三方的分享框架,如友盟,ShareSDK等。接下来先介绍一个系统自带的分享功能。 打开设备或模拟器的偏好设置,可以看到如下
系统需要先登录到微博
项目中需要导入一个系统自带头文件 #import 我们在屏幕的点击事件中来实现分享到微博
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
- ( 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 // 弹出分享控制器 [self presentViewController:composeVC animated:YES completion:nil]; // 监听用户点击事件 composeVC.completionHandler = ^(SLComposeViewControllerResult result){ if (result == SLComposeViewControllerResultDone) { NSLog(@ "点击了发送" ); } else if (result == SLComposeViewControllerResultCancelled) { NSLog(@ "点击了取消" ); } }; } |
当点击屏幕的时候可以看到如下
点击post即可将内容分享出去。当然该分享方式具有一定的局限性,所以一般我们都会使用第三方框架。