美文网首页
市场分享最新竞品分析

市场分享最新竞品分析

作者: 白白酱 | 来源:发表于2018-10-15 16:21 被阅读0次

经市场调查,目前做分享的SDK,最受欢迎的就是ShareSDK和友盟的,下面我们来对比下这2个SDK在集成过程中的一些区别:

对比ShareSDK和友盟


一.SDK大小

对比环境说明:
  1. 只集成社交平台 新浪微博,微信,QQ,Facebook(微博,QQ,微信均使用精简版)
  2. 均不包含各自的UI库,使用最简单最基础的接口实现分享
  3. 均在一个新建的干净的Xcode项目中进行集成
对比数据说明
  1. 均使用LinkMap对项目进行统计,统计的是项目打包后所占的大小
  2. 表格中均统计各自必须要的库大小(如果需要第三方库,则也应计算在内;不包含系统库)

以下为统计友盟UM Share 的arm64结果的截图:

友盟UM Share
arm64
UMShare 394.15KB
UMCommon 273.92KB
libSocialWeChat.a 61.16KB
libSocialSina.a 86.48KB
libSocialQQ.a 65.58KB
FBSDKShareKit 556.99KB
FBSDKCoreKit 509.87KB
FBSDKLoginKit 119.08KB
libSocialFacebook.a 21.93KB
Bolts 86.52KB
总计 2175.68(2.12M)
ShareSDK
arm64
ShareSDK 238.02KB
MOBFoundation 594.77KB
SinaWeiboConnector 142.56KB
WechatConnector 93.50KB
QQConnector 65.15KB
FacebookConnector 112.62KB
ShareSDK.bundle(仅包含Sina,QQ,Wechat,Facebook三个平台的js) 45KB
总计 1291.62(1.26M)

二.集成复杂度

1)注册,登录,创建应用获取key,基本没差别;
2)添加SDK,以及依赖库;

i.可以使用cocoapods集成,无需添加依赖库等配置
ii.手动集成SDK
2种方式基本没有差别;

3)代码配置
(1)设置AppKey,配置第三方平台;
友盟:
//引入头文件
#import <UMShare/UMShare.h>
#import <UMCommon/UMCommon.h>

[UMConfigure initWithAppkey:@"5861e5daf5ade41326001eab" channel:@"App Store"];
  
[[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_WechatSession appKey:@"wxdc1e388c3822c80b" appSecret:@"3baf1193c85774b3fd9d18447d76cab0" redirectURL:@"http://mobile.umeng.com/social"];
    
[[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_QQ appKey:@"1105821097"/*设置QQ平台的appID*/  appSecret:nil redirectURL:@"http://mobile.umeng.com/social"];
    
[[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_Sina appKey:@"3921700954"  appSecret:@"04b48b094faeb16683c32669824ebdad" redirectURL:@"https://sns.whalecloud.com/sina2/callback"];


ShareSDK
94FB705E-B1E7-4264-89DB-DB5B7C2D49CB.png
//引入头文件
#import <ShareSDK/ShareSDK.h>
[ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
        //QQ
        [platformsRegister setupQQWithAppId:@"100371282" appkey:@"aed9b0303e3ed1e27bae87c33761161d"];
        //微信
        [platformsRegister setupWeChatWithAppId:@"wx617c77c82218ea2c" appSecret:@"c7253e5289986cf4c4c74d1ccc185fb1"];
        //新浪
        [platformsRegister setupSinaWeiboWithAppkey:@"568898243" appSecret:@"38a4f8204cc784f81f9f0daaf31e02e3" redirectUrl:@"http://www.sharesdk.cn"];
    }];

其次,友盟还需要在Appdelegate.m里增加这些回调处理的方法:

// 支持所有iOS系统
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    //6.3的新的API调用,是为了兼容国外平台(例如:新版facebookSDK,VK等)的调用[如果用6.2的api调用会没有回调],对国内平台没有影响
    BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url sourceApplication:sourceApplication annotation:annotation];
    if (!result) {
        // 其他如支付等SDK的回调
    }
    return result;
}
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options
{
    //6.3的新的API调用,是为了兼容国外平台(例如:新版facebookSDK,VK等)的调用[如果用6.2的api调用会没有回调],对国内平台没有影响
    BOOL result = [[UMSocialManager defaultManager]  handleOpenURL:url options:options];
    if (!result) {
        // 其他如支付等SDK的回调
    }
    return result;
}
//支持目前所有iOS系统
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
    if (!result) {
        // 其他如支付等SDK的回调
    }
    return result;
}

但是ShareSDK并不需要加这些方法。

(2)实现分享

友盟:

引入头文件
#import <UMShare/UMShare.h>
- (void)umshare
{
     //创建分享消息对象
    UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject];
    
    //创建网页内容对象
    NSString* thumbURL =  @"https://mobile.umeng.com/images/pic/home/social/img-1.png";
    //  NSString *imgPath = [[NSBundle mainBundle] pathForResource:@"D11" ofType:@"jpg"];
    // NSData * path =[NSData dataWithContentsOfFile:imgPath];
    UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:@"欢迎使用【友盟+】社会化组件U-Share" descr:@"欢迎使用【友盟+】社会化组件U-Share,SDK包最小,集成成本最低,助力您的产品开发、运营与推广!" thumImage:thumbURL];
    //设置网页地址
    shareObject.webpageUrl = @"http://mobile.umeng.com/social";
    
    //分享消息对象设置分享内容对象
    messageObject.shareObject = shareObject;
    //调用分享接口
    [[UMSocialManager defaultManager] shareToPlatform:UMSocialPlatformType_WechatSession messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
        if (error) {
            NSLog(@"************Share fail with error %@*********",error);
        }else{
            NSLog(@"response data is %@",data);
            NSLog(@"分享成功");
        }
    }];
   
}

ShareSDK:

//引入头文件
#import <ShareSDK/ShareSDK.h>
#import <ShareSDKUI/ShareSDK+SSUI.h>
//1、创建分享参数
    NSMutableDictionary *shareParams = [NSMutableDictionary dictionary];
    [shareParams SSDKSetupShareParamsByText:@"分享内容"
                                     images:[[NSBundle mainBundle] pathForResource:@"COD13" ofType:@"jpg"]
                                        url:[NSURL URLWithString:@"http://mob.com"]
                                      title:@"分享标题"
                                       type:SSDKContentTypeAuto];
    

    //2、分享(可以弹出我们的分享菜单和编辑界面)
  [ShareSDK share:SSDKPlatformTypeWechat parameters:shareParams onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {
         switch (state) {
                    case SSDKResponseStateSuccess:
                    {
                      
        
                        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"分享成功"
                                                                            message:nil
                                                                           delegate:nil
                                                                  cancelButtonTitle:@"确定"
                                                                  otherButtonTitles:nil];
                        [alertView show];
                        break;
                    }
                    case SSDKResponseStateFail:
                    {
                        NSLog(@"----%@",error.description);
                        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"---分享失败"
                                                                        message:[NSString stringWithFormat:@"%@",error]
                                                                       delegate:nil
                                                              cancelButtonTitle:@"OK"
                                                              otherButtonTitles:nil, nil];
                        [alert show];
                        break;
                    }
     default:
                      break;
         }

    }];

总结:

ShareSDK:方法多为block设置结构,代码多但易于检查,层次清晰;
友盟:方法设置比较分散,平台多时不易查找问题,不过灵活多选;
个人感觉ShareSDK比友盟更好用,这不仅体现在代码设计结构上,另外ShareSDK也有更专业的技术服务!

4)设置URL Scheme以及白名单

如何设置QQ的URL Scheme?
友盟:


D4672FFE-76B1-47CA-807D-2DB3A89313AB.png

ShareSDK:


D6A81DD7-1E56-49EE-AEB6-967A270393D1.png

结论:这里可以看出ShareSDK开发文档更加详细,容易理解。

其他对比

对比点 友盟 ShareSDK
大小 1
技术服务 1
SDk更新频率 1
文档简单 1
技术论坛 1

以上就是个人的见解啊,亲们觉得哪个更方便呢,欢迎发表意见哦!

相关文章

  • 市场分享最新竞品分析

    经市场调查,目前做分享的SDK,最受欢迎的就是ShareSDK和友盟的,下面我们来对比下这2个SDK在集成过程中的...

  • 网易蜗牛读书竞品调研报告

    网易蜗牛读书竞品调研报告 竞品调研目的 了解竞品最新动态和竞品优点,分析...

  • 【4A营销广告圈】竞品分析报告专题合集-72例

    关键词推介:竞品报告、竞品方案、竞品分析、营销洞察、案例分析、市场分析、监测报告、竞品调查、竞品信息等。 这次4A...

  • 市场分享竞品分析

    经市场调查,目前做分享的SDK,最受欢迎的就是ShareSDK和友盟的,下面我们来对比下这2个SDK在集成过程中的...

  • 初学者之竞品分析简介

    阅读不少大牛的竞品分析攻略和心得,对于竞品分析的总结和复盘START! 1、什么是竞品分析? 竞品分析是在对于市场...

  • 市场竞品分析-竞品分析

    竞品分析概述 从需求、策划、研发到上线,一款产品需要经过一系列严谨的过程。一个好的产品,只凭感觉是肯定不行的,所以...

  • PM菜鸟分享3

    PM菜鸟分享3:竞品分析 竞品分析的学习:(问题+解答) 1.什么是竞品分析:竞品分析顾名思义,是对竞争对手的产品...

  • 摩拜单车 VS ofo小黄车|竞品分析报告

    一、 市场分析 1.1市场规模 1.2市场现状 二、竞品选择2.1竞品背景 2.2竞品现状 三、产品功能及结构 3...

  • B端竞品信息获取那么困难,我们应该如何做竞品分析呢?

    01我们为什么要做竞品分析 我们在做一款产品之前,往往需要先做市场调查和竞品分析,通过了解市场状况以及竞品们的分析...

  • 如何去做竞品分析

    竞品分析目的 目的决定一切,竞品分析的目的就是用来指导我们的产品改进研发的。 我们通过竞品分析,了解市场行情,了解...

网友评论

      本文标题:市场分享最新竞品分析

      本文链接:https://www.haomeiwen.com/subject/yxjwaxtx.html