玩|玩 iOS 友盟分享

1.按着官方集成文档,一步一步做
https://developer.umeng.com/docs/66632/detail/66825
  1. //友盟分享极简版
#import “UMSocialQQHandler.h"//QQ极简 #import “UMSocialWechatHandler.h" //微信极简 #define UMAppKeychannel @"kahafgjfgjhhjgas12314" //友盟AppKey

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions { // 配置友盟SDK产品并并统一初始化 [UMConfigureinitWithAppkey:UMAppKeychannel:@"App Store"]; //分享 [[UMSocialManagerdefaultManager] setUmSocialAppkey: UMAppKeychannel]; //如果要分享http的图片地址,手动将其关闭 [UMSocialGlobal shareInstance].isUsingHttpsWhenShareContent = NO; /* 设置微信的appKey和appSecret */ [[UMSocialManagerdefaultManager] setPlaform:UMSocialPlatformType_WechatSessionappKey:weixinkeyappSecret:@"d46a7567c7f639b26ba5cdbd22"redirectURL:@"[http://mobile.umeng.com/social](http://mobile.umeng.com/social)"]; /*设置QQ平台的appID*/ [[UMSocialManagerdefaultManager] setPlaform:UMSocialPlatformType_QQappKey:@"471357"appSecret:nilredirectURL:@"[http://mobile.umeng.com/social](http://mobile.umeng.com/social)"]; // Override point for customization after application launch. /* 设置新浪的appKey和appSecret */ [[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_Sina appKey:Sina_keyappSecret:@"8bc00fa74e82aed5a1caca9891947" redirectURL:@"https://sns.whalecloud.com/sina2/callback"]; returnYES; }

//分享回调
-(BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url{BOOLresult = [[UMSocialManagerdefaultManager] handleOpenURL:url]; if(!result) {// 其他如支付等SDK的回调}return result; }

//实现文件 viewcontroller.m 里
#import
【玩|玩 iOS 友盟分享】//响应事件中 ->显示分享面板
[UMSocialUIManagershowShareMenuViewInWindowWithPlatformSelectionBlock:^(UMSocialPlatformTypeplatformType, NSDictionary*userInfo) { // 根据获取的platformType确定所选平台进行下一步操作 [selfshareWebPageToPlatformType:platformType]; //新增代码 }];

//定义实现的方法
- (void)shareWebPageToPlatformType:(UMSocialPlatformType)platformType{//创建分享消息对象UMSocialMessageObject*messageObject = [UMSocialMessageObjectmessageObject]; //创建网页内容对象NSString* thumbURL =@"[https://mobile.umeng.com/images/pic/home/social/img-1.png](https://mobile.umeng.com/images/pic/home/social/img-1.png)"; UMShareWebpageObject*shareObject = [UMShareWebpageObjectshareObjectWithTitle:@"欢迎使用【友盟+】社会化组件U-Share"descr:@"欢迎使用【友盟+】社会化组件U-Share,SDK包最小,集成成本最低,助力您的产品开发、运营与推广!"thumImage:thumbURL]; //设置网页地址shareObject.webpageUrl= @"[http://mobile.umeng.com/social](http://mobile.umeng.com/social)"; //分享消息对象设置分享内容对象messageObject.shareObject= shareObject; //调用分享接口[[UMSocialManagerdefaultManager] shareToPlatform:platformType messageObject:messageObject currentViewController:selfcompletion:^(iddata, NSError*error) {if(error) {UMSocialLogInfo(@"************Share fail with error %@*********",error); }else{if([data isKindOfClass:[UMSocialShareResponseclass]]) {UMSocialShareResponse*resp = data; //分享结果消息UMSocialLogInfo(@"response message is %@",resp.message); //第三方原始返回的数据UMSocialLogInfo(@"response originalResponse data is %@",resp.originalResponse); }else{ UMSocialLogInfo(@"response data is %@",data); } } NSLog(@"分享出错%@",error); //修改代码 }]; }

实现自定义分享板块

玩|玩 iOS 友盟分享
文章图片
Simulator Screen Shot - iPhone X - 2018-08-08 at 23.24.42.png
点击不同按钮 响应相应的类型 然后发起分享
[TSFiveUSocialShareView showWithWeiBo:^{//新浪 UMSocialPlatformType platformType = UMSocialPlatformType_Sina; [self shareWebPageToPlatformType:platformType]; } qq:^{//QQ UMSocialPlatformType platformType = UMSocialPlatformType_QQ; [self shareWebPageToPlatformType:platformType]; } qqZone:^{//qq空间 UMSocialPlatformType platformType = UMSocialPlatformType_Qzone; [self shareWebPageToPlatformType:platformType]; } weiChat:^{//微信 UMSocialPlatformType platformType = UMSocialPlatformType_WechatSession; [self shareWebPageToPlatformType:platformType]; } weiChatFrend:^{//朋友圈 UMSocialPlatformType platformType = UMSocialPlatformType_WechatTimeLine; [self shareWebPageToPlatformType:platformType]; }];

分享实现传递类型参数
- (void)shareWebPageToPlatformType:(UMSocialPlatformType)platformType { //创建分享消息对象 UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject]; if (platformType == UMSocialPlatformType_Sina) {//新浪做特殊处理 //设置文本 messageObject.text = [NSString stringWithFormat:@"%@%@",self.model.title,self.model.url]; //创建图片内容对象 UMShareImageObject *shareObject = [[UMShareImageObject alloc] init]; //图片内容 [shareObject setShareImage:self.model.icon]; //分享消息对象设置分享内容对象 messageObject.shareObject = shareObject; }else{ UMShareWebpageObject *shareObject = [[UMShareWebpageObject alloc] init]; shareObject.webpageUrl =self.model.url; shareObject.descr = self.model.info; shareObject.title = self.model.title; shareObject.thumbImage =self.model.icon; //分享消息对象设置分享内容对象 messageObject.shareObject = shareObject; } //调用分享接口 [[UMSocialManager defaultManager] shareToPlatform:platformType messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) { if (error) { TSLog(error); }else{ if ([data isKindOfClass:[UMSocialShareResponse class]]) { UMSocialShareResponse *resp = data; //分享结果消息 UMSocialLogInfo(@"response message is %@",resp.message); //第三方原始返回的数据 UMSocialLogInfo(@"response originalResponse data is %@",resp.originalResponse); }else{ UMSocialLogInfo(@"response data is %@",data); } } }]; }

    推荐阅读