iOS开发-友盟分享使用(2)

时间:2021-02-06 14:46:23

1.友盟SDK提供功能:分享喜欢的东西到新浪微博、qq空间、为微信朋友圈等等等等社交圈。 
2.友盟分享前期准备 
(1)注册账号 去官网 
(2)创建应用获取appkey 类似5556a53667e******500661d 
(3)根据需要和要分享的平台下载SDK 
3. 分享集成过程 – 简单分享 
(1)把文件拖入到工程中 
(2)设置二进制依赖库 
—————–framework—————– 
Security.framework, 
libiconv.dylib, 
SystemConfiguration.framework, 
CoreGraphics.framework, 
libsqlite3.dylib, 
CoreTelephony.framework, 
libstdc++.dylib, 
libz.dylib 
(3)初始化友盟SDK 
AppDelegate.m 中 
#import “UMSocial.h” 
//初始化 
[UMSocialData setAppKey:@”5556a53667e******500661d”]; 
4. 分享集成过程 – 集成微信 QQ分享 
AppDelegate中完整地初始化方法

-(void)configUMShare
{
    [UMSocialData setAppKey:@"5556a53667e58e1bb500661d"];
    // 微信的
    [UMSocialWechatHandler setWXAppId:@"wxd930ea5d5a258f4f" appSecret:@"db426a9829e4b49a0dcac7b4162da6b6" url:@"http://www.umeng.com/social"];
    // qq的
    [UMSocialQQHandler setQQWithAppId:@"100424468" appKey:@"c7394704798a158208a74ab60104f0ba" url:@"http://www.umeng.com/social"];

}

5.设置URL Schemes(用于微信、QQ分享完成之后返回当前App) 
微信:target,在 Info->URL Types中添加 wxd930ea5d5a258f4f 
QQ:target,在 Info->URL Types中添加 QQ05FC5B14  
额外设置 url schemes 的格式为”tencent”+腾讯QQ互联应用appId,例如“tencent100424468” 
示例如下图: 
iOS开发-友盟分享使用(2) 
6. 分享集成过程 – 高级分享

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSLog(@"%ld",buttonIndex);
    if(buttonIndex<6)
    {
        //
        NSArray *sharePlatforms = @[UMShareToSina,
                                    UMShareToTencent,
                                    UMShareToWechatSession,
                                    UMShareToWechatTimeline,
                                    UMShareToQQ,
                                    UMShareToQzone,
                                    UMShareToSms,
                                    UMShareToEmail];

        //0~5 每种分享形式
        //注意:分享到微信好友、微信朋友圈、微信收藏、QQ空间、QQ好友、来往好友、来往朋友圈、易信好友、易信朋友圈、Facebook、Twitter、Instagram等平台需要参考各自的集成方法
        NSString *shareText = [NSString stringWithFormat:@"有个应用 %@ 好好玩哦, 大家快来玩吧,地址是%@",self.model.name,self.model.itunesUrl];

        [[UMSocialControllerService defaultControllerService] setShareText:shareText shareImage:_iconImageView.image socialUIDelegate:self];        //设置分享内容和回调对象

        //选择分享方式进行分享
        [UMSocialSnsPlatformManager getSocialPlatformWithName:sharePlatforms[buttonIndex]].snsClickHandler(self,[UMSocialControllerService defaultControllerService],YES);
    }
}