友盟分享、登录相关

需到各平台申请接口
微信:https://open.weixin.qq.com
QQ: http://open.qq.com
微博:http://open.weibo.com

  • 设置友盟Key
[UMSocialData setAppKey:UMengSocialAppKey];
  • 打开调试log的开关
[UMSocialData openLog:YES];
  • 支持不同的屏幕方向
[UMSocialConfig setSupportedInterfaceOrientations:UIInterfaceOrientationMaskAll];
  • 设置微信AppId,设置分享url
[UMSocialWechatHandler   setWXAppId:WeixinAppkey
                            appSecret:WeixinSecret
                                  url:@"http://www.baidu.com"];
  • 设置分享到QQ空间的应用Id和分享url
[UMSocialQQHandler   setQQWithAppId:QQAppID
                               appKey:QQAppkey
                                  url:@"http://www.baidu.com"];
  • 若用户没安装相关客户端,就隐藏掉
[UMSocialConfig hiddenNotInstallPlatforms:@[UMShareToSina,UMShareToQQ, UMShareToWechatSession, UMShareToWechatTimeline,UMShareToQzone]];
  • 微信相关设置
[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeWeb;
 [UMSocialData defaultData].extConfig.wechatSessionData.url = url;     //微信好友
  [UMSocialData defaultData].extConfig.wechatTimelineData.url = url;    //朋友圈
[UMSocialData defaultData].extConfig.title = @"title WeiXin";
  • 手机QQ、QQ空间相关设置
[UMSocialData defaultData].extConfig.qqData.qqMessageType = UMSocialQQMessageTypeDefault;
  [UMSocialData defaultData].extConfig.qqData.title = @"title QQ";
 [UMSocialData defaultData].extConfig.qqData.url = url;
 [UMSocialData defaultData].extConfig.qzoneData.title = @"title QZone";
 [UMSocialData defaultData].extConfig.qzoneData.url = url;
  • 新浪微博相关设置
[[UMSocialData defaultData].extConfig.sinaData.urlResource setResourceType:UMSocialUrlResourceTypeWeb url:url];
  • 分享
[UMSocialSnsService      presentSnsIconSheetView:self
                                            appKey:UMengSocialAppKey
                                         shareText:[NSString stringWithFormat:@"...分享自:http://www.baidu.com"]
                                        shareImage:nil  
                                   shareToSnsNames:@[UMShareToWechatTimeline, UMShareToWechatSession, UMShareToQQ,UMShareToQzone, UMShareToSina,UMShareToSms,UMShareToEmail]
                                          delegate:self];
  • 实现UMSocialUIDelegate代理方法
 - (void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
    if (response.responseCode == UMSResponseCodeSuccess) {
        NSLog(@"分享成功");
    } else {
        NSLog(@"分享失败");
    }
}```
- 登录

UMSocialSnsPlatform *snsPlatform = [UMSocialSnsPlatformManager getSocialPlatformWithName:UMShareToWechatSession];
snsPlatform.loginClickHandler(self,[UMSocialControllerService defaultControllerService],YES,^(UMSocialResponseEntity *response)
{
if (response.responseCode == UMSResponseCodeSuccess)
{
UMSocialAccountEntity *snsAccount = [[UMSocialAccountManager socialAccountDictionary] valueForKey:UMShareToWechatSession];
NSLog(@"微信 snsAccount \n%@",snsAccount);
NSLog(@"微信第三方原始response response.thirdPlatformResponse %@",response.thirdPlatformResponse);
NSLog(@"微信第三方返回的用户详细信息 response.thirdPlatformUserProfile %@",response.thirdPlatformUserProfile);
// 处理数据
}
});

参见[友盟SDK5.2.1版本 官方文档](http://dev.umeng.com/social/ios/quick-integration?spm=0.0.0.0.2WVixn)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 导语 做项目难免涉及到第三方登录和分享,离职前夕,老板让整理了份友盟分享登录的文档供运营以后用,虽然简单,但既然整...
    欢欢1206阅读 1,816评论 3 7
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • 提要:(后面粘上代码!!!如果就是按照我的方法实现,直接复制代码,稍作调整即可) 本文着重介绍:就本人使用代码实现...
    爱iOS的延哥阅读 6,499评论 32 17
  • 隋瑭很不靠谱。 但是很奇怪,我们很合得来。隋瑭说是因为我也很不靠谱。 于是两个不靠谱的人成为了同桌,做了许许多多不...
    本宫帅帅哒阅读 460评论 0 0
  • 《好好学习》有感 今天来说说,学习临界知识需要具备的第二个心态:以慢为快。 越是快速提升的能力,越是需要下慢功夫。...
    璐籽堡阅读 332评论 6 3